当前位置: 代码迷 >> 综合 >> Django2.2+xadmin2入坑指南(django学习13)
  详细解决方案

Django2.2+xadmin2入坑指南(django学习13)

热度:67   发布时间:2023-11-16 23:14:51.0

 

如果不是django2.2的安装django2.2

pip3 install -i https://pypi.doubanio.com/simple/ django==2.2

安装完成之后需要改掉mysql的版本限制、以及一个decode改成encode,在我前面的数据库系列学习笔记中有记载。

下载xadmin源码:

源码安装:

github地址:https://github.com/sshwsfc/xadmin/tree/django2 (django2分支)

clone 或者 下载到本地以后,把xadmin文件夹直接拷贝到项目目录中,就像这样(我是新建了一个extra_apps专门存放第三方app)

pip安装一些依赖包

pip3 install  django-crispy-forms
pip3 install django-formtools
pip3 install httplib2
pip3 install future
pip3 install six
pip3 install django-import-export

配置setting.py注册apps

INSTALLED_APPS = [......'xadmin','crispy_forms',
]

urls.py中添加路由

import xadminurlpatterns = [url(r'^xadmin/', xadmin.site.urls),
]

如果已经注册超级用户了那就不用注册了,默认我认为你已经注册超级用户。

如果没有注册超级用户:python3 manage.py createsuperuser

继续:

python3 manage.py makemigrationspython3 manage.py migrate

同步记录,生成表,并且运行,访问xadmin

python3 manage.py runserver

如果发现页面是英文的,可以在settings.py中配置语言和时区

LANGUAGE_CODE = 'zh-hans'TIME_ZONE = 'Asia/Shanghai'USE_I18N = TrueUSE_L10N = TrueUSE_TZ = False    #设置为False则使用本地时间,否则会使用国际时间

接下来就是把app注册到xadmin中

在app目录下新建一个adminx.py, xadmin会自动搜寻该文件来注册model

以别人的一个校园卡管理系统的代码为例

import xadmin
from .models import EmailVerifyRecordclass EmailVerfyRecordAdmin:#显示哪些列list_display=('code','email','send_time')#显示搜索框,并且定义可以搜索哪些字段search_fields=('code','email','send_type','send_time')#设定过滤器list_filter=('code','email','send_type','send_time')xadmin.site.register(EmailVerifyRecord,EmailVerfyRecordAdmin)