文檔:http://sshwsfc.github.io/xadmin/python
環境:Python3.6+Django2.0+Xadmin2.0+mysqlclient1.4.6
本次使用的xadmin官方倉庫地址爲:xadminmysql
因爲官方版本對Django2.0.x的支持問題(貌似已經再也不更新了),選用了一個修復版( xadmin修復版)
建立虛擬環境linux
conda create -n django2.0 django=2.0
mkvirtualenv django2.0
pip install django==2.0
具體虛擬環境的配置見虛擬環境的文檔
安裝必要的包git
pip install mysqlclient
,也能夠指定版本數據庫的配置(settings.py)以下github
DATABASES = { 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 'ENGINE': 'django.db.backends.mysql', 'NAME': 'dbname', 'USER': 'username', 'PASSWORD': 'xxx', 'HOST': 'localhost', 'PORT': '3306', 'OPTIONS': { # 初始化數據庫的命令 'init_command': "SET sql_mode='STRICT_TRANS_TABLES';" } } }
能夠在此時遷移數據,也能夠在下面適配好xadmin以後一塊兒遷移數據
使用命令:sql
python manage.py migrate
pip install git+git://github.com/sshwsfc/xadmin.git@django2
pip uninstall xadmin
卸載xadmin,依賴包會保留下來;配置項目數據庫
在settings.py中添加應用django
# 將extra_apps的添加至python項目的搜索目錄 sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps')) INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 第三方管理後臺 'xadmin', # 相關依賴 'crispy_forms', # 相關依賴 'reversion', ]
在urls.py中添加路由,替換掉官方adminsession
# from django.contrib import admin from django.urls import path import xadmin
urlpatterns = [ # path('admin/', admin.site.urls), path('xadmin/', xadmin.site.urls), ] ```
遷移數據app
python manage.py migrate
成功:
在settings.py中設置中文顯示
LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'Asia/Shanghai'