xadmin是django自帶的后台的很好的替代品,今天記錄一下在django最新版本2.2.4上如何安裝xadmin
環境如下:
Win10 1903
Python 3.7.3
Django 2.2.4
Pycharm 2019.2
一、建立項目
django-admin startproject xadmintest
在根目錄下新建立 apps(用來放置自己寫的app)和 extra_apps (用來放置引用別人的app)目錄,單擊右鍵將這兩個目錄 Mark Directory as Sources Root
修改setting.py,添加
1 import sys 2 3 sys.path.insert(0, os.path.join(BASE_DIR, 'apps')) 4 sys.path.insert(1, os.path.join(BASE_DIR, 'extra_apps'))
二、添加xadmin
打開https://github.com/sshwsfc/xadmin/tree/django2 將xadmin的django2分支下載到本地,解壓后將 xadmin 文件夾復制到 extra_app
三、初始化數據庫並配置xadmin
按下 Ctrl + Alt +R 或者點擊 Tools->Run manage.py Task... 輸入 makemigrations以及migrate或者直接在命令行里輸入
1 python manage.py makemigrations 2 python manage.py migrate
再次修改setting.py,在 INSTALLED_APPS 下添加xadmin 和 crispy_forms
打開urls.py 配置路由
1 import xadmin 2 3 urlpatterns = [ 4 path('xadmin/', xadmin.site.urls), 5 ]
按下 Ctrl + Alt +R 或者點擊 Tools->Run manage.py Task... 輸入 makemigrations xadmin 以及migrate xadmin 或者直接在命令行里輸入
1 python manage.py makemigrations xadmin 2 python manage.py migrate xadmin
發現有xadmin的依賴項沒有安裝,根據錯誤提示逐一安裝(我用的是Anaconda預裝了一些包,如果還缺少別的請自己安裝)
1 pip install django-crispy-forms django-formtools httplib2 django-import-export
創建超級用戶
先使用django自帶的admin初始化一遍數據庫是因為xadmin的django2分支沒有生成 django_session 這張表會導致報錯
四、寫一個自己的app並打開后台
自己編寫一個app,在app的根目錄下新建一個adminx.py(文件名字必須是adminx.py)輸入
1 import xadmin 2 from .models import Question, Choice 3 4 xadmin.site.register(Question) 5 xadmin.site.register(Choice)
運行程序打開后台http://127.0.0.1:8000/xadmin
大功告成!