版权声明:本文为博主原创文章,欢迎转载,并请注明出处。联系方式:460356155@qq.com

xadmin是一个强大的替代django admin的管理后台,github地址为:https://github.com/sshwsfc/xadmin,为了匹配django最新的1.11版本,建立了1.11版本支持的分支:https://github.com/sshwsfc/xadmin/tree/django1.11

本文简单介绍下xadmin在django 1.11版中的使用及注意事项。

一、django基本使用

1、django-admin startproject xxx

2、python manage.py runserver,这时可访问页面http://127.0.0.1:8000/,出来:

It worked!

Congratulations on your first Django-powered page.

3、此时无法访问admin后台,继续:

4、python manage.py migrate,python manage.py createsuperuser,python manage.py runserver,可访问admin:

Site administration

二、xadmin在django 1.11的使用

1、在github分支上下载xadmin-django1.11.zip,解压

2、拷贝xadmin到项目目录下(和manage.py在同一级目录)

3、在settings.py的INSTALLED_APPS中添加:

'xadmin',
'crispy_forms',
'reversion',

在MIDDLEWARE添加:

'django.middleware.locale.LocaleMiddleware',

在TEMPLATES添加:

'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',

另外添加行:

from django.utils.translation import ugettext_lazy as _

LANGUAGES = (
('en', _('English')),
('zh-hans', _('Chinese')),
)

4、在urls.py添加行:

from django.conf.urls import include
import xadmin xadmin.autodiscover() from xadmin.plugins import xversion
xversion.register_models()

在urlpatterns添加:

url(r'xadmin/', include(xadmin.site.urls)),    

5、执行:python manage.py migrate,python manage.py runserver,可访问xadmin:http://127.0.0.1:8000/xadmin/,出来:

三、xadmin在django 1.11使用中的中英文切换问题

通过前面的步骤,xadmin可正常使用,但却没有xadmin demo中显示的中英文切换功能。原因在xadmin\plugins\language.py文件中:

if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE_CLASSES:
site.register_plugin(SetLangNavPlugin, CommAdminView)
site.register_view(r'^i18n/setlang/$', SetLangView, 'set_language')

django从1.10开始MIDDLEWARE_CLASSES更名为MIDDLEWARE,因此上面if中的代码未执行,因此也就没有中英文切换功能。

解决办法有几种:

1、把settings.py的MIDDLEWARE修改为MIDDLEWARE_CLASSES。

2、language.py中的MIDDLEWARE_CLASSES改为MIDDLEWARE。

3、language.py中的if语句改为:

if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in (settings.MIDDLEWARE_CLASSES + settings.MIDDLEWARE):

xadmin在Django 1.11中的使用及中英文切换的更多相关文章

  1. Matlab中界面和注释---中英文切换问题

    有参考网页后实践的心得: Matlab中界面和注释---中英文切换问题 网上有大把的方法,并不是一一有效,这里介绍一种比较简单的方法我自己的电脑挺好用的,大家的电脑matlab需要你们自己实验了. 1 ...

  2. Django 1.10 中文文档------3.3.8 会话sessions

    django支持匿名会话.它将数据存放在服务器端,并抽象cookies的发送和接收过程.cookie包含一个会话ID而不是数据本身(除非你使用的是基于后端的cookie). 3.3.8.1 启用会话 ...

  3. Django数据库设计中字段为空的方式

    今天在做数据库设计的时候,设计了如下User表,其中我把email和phone字段设置为允许为空: class User(models.Model): username = models.CharFi ...

  4. angular 4 和django 1.11.1 前后端交互 总结

    首先 angular4 和django 1.11.1交互 有跨域问题 所以先关闭cors 和csrf验证 一.解决跨域问题 cors github django-cors-headers 1)安装co ...

  5. 【Django】URL中传递中文的问题

     开发环境:Ubuntu16.04+Django 1.11.9+Python2.7 在开发中,在做查找某些信息这个功能的时候,遇到的一个问题.需要在URL中传递查找的关键字,当关键字为中文的时候,并不 ...

  6. Django 资源 与 知识 Django中自建脚本并使用Django环境 model中的save()方法说明 filter()用法

    Django 资源 与 知识 Django中自建脚本并使用Django环境 model中的save()方法说明 filter()用法 2018/11/06 Chenxin 资料说明 Django基础入 ...

  7. Django框架11 /form组件、modelForm组件

    Django框架11 /form组件.modelForm组件 目录 Django框架11 /form组件.modelForm组件 1. form组件介绍 2. form常用字段与插件 3. form所 ...

  8. django 1.11.16之环境搭建

    django版本:django1.11.16  windows环境 python 3.6.3    !!!可先安装虚拟环境在进行环境搭建  1.安装django:pip install django= ...

  9. 从linux0.11中起动部分代码看汇编调用c语言函数

    上一篇分析了c语言的函数调用栈情况,知道了c语言的函数调用机制后,我们来看一下,linux0.11中起动部分的代码是如何从汇编跳入c语言函数的.在LINUX 0.11中的head.s文件中会看到如下一 ...

随机推荐

  1. 研发团队如何写好API接口文档

    导读 背景 痛点在哪? 为什么要写接口文档? API规范 接口工具 总结 背景        随着业务的发展,支撑组的项目也是越来越多.同时,从整个支撑组项目架构体系(含运维和运营体系),我们对系统业 ...

  2. WPF StringFormat 格式化文本

    StringFormat对特定数据格式的转换 WPF中,对数字/日期等的格式化,可参考此篇博客:https://www.cnblogs.com/zhengwen/archive/2010/06/19/ ...

  3. PHP中利用pcntl实现多进程(模拟多线程)实例(转)

    windows不支持pcntl的多线程(非Unix类系统不支持此模块),pcntl在很久很久之前就听过了,但是一直没有尝试着真正要用它. 这不,遇到socket问题了,看socket,遇到pcntl了 ...

  4. string[]转list<long>,List转字符串

    List转字符串,用逗号隔开 List<string> list = new List<string>();list.Add("a");list.Add(& ...

  5. iptables配置管理

    iptables规则 内核netfilter的规则: iptables的规则: 基本操作 实践:往iptables中插入一条规则:禁止基于端口号为22的所有客户端访问(等于是禁止基于SSH的客户端连接 ...

  6. Go开发之路(目录)

    知识点 1. Go语言 简介 2. Go语言 基本语法 3. Go语言 strings以及strconv的使用 4. Go语言 时间和日期类型 5. Go语言 指针类型 6. Go语言 流程控制 7. ...

  7. vue px转换为rem

    前端开发中还原设计图的重要性毋庸置疑,目前来说应用最多的应该也还是使用rem.然而很多人依然还是处于刀耕火种的时代,要么自己去计算rem值,要么依靠编辑器安装插件转换. 而本文的目标就是通过一系列的配 ...

  8. nginx在代理转发地图瓦片数据中的应用

    最近有这样一个需求,需要将arcgis server发布的地图瓦片放在移动硬盘中,系统演示的时候,直接调用本地的地图瓦片,而非远程的,主要是为了系统演示的时候加快地图访问速度. 而且需要在任意电脑运行 ...

  9. 不指定源ip时,系统选择哪个ip作为ping包的源ip?

    问题:当centos 有多个网口,发起ping包时,是根据什么规则来确定是使用哪个源ip? 解答:根据目的ip来确定,迭代可以确定源ip 具体的确定方法是, (1)先根据目的ip来确定使用哪个路由表项 ...

  10. iOS----------常见宏定义

    在我们日常的项目中,合理的使用宏定义,会大大减少我们的代码量,以及代码的可读性,为方便读者使用,总结如下: pragma mark - Application相关 ///=============== ...