python測試開發django-34.xadmin管理后台


前言

django自帶的admin后台管理頁面有點丑陋,於是網上的大神優化了一版后台管理xadmin,並且開源了,在github開源下載到源碼。
注意環境搭配:

  • django 2.1.2
  • xadmin 2.0
  • python 3.6

xadmin安裝

xadmin在github的源碼地址https://github.com/sshwsfc/xadmin,可以用pip安裝也可以自己下載后導入到項目中。
這里不推薦pip安裝,會有報錯。本篇介紹下載xadmin后導入的django項目中的方法。

先在github上下載源碼包,由於小編的django版本是2.1版本,下載對應的django2分支代碼。
這里不能直接下載master分支(別問是怎么知道的,一把辛酸淚!),版本不匹配,親人兩行淚!

下載了后解壓出來,只需要里面的xadmin這一部分內容

在原來的django項目工程下新建一個extra_apps包,把上面的xadmin目錄整個放到extra_apps目錄下,如下結構

接着在pycharm上把extra_apps包Mark為Sources Root。具體操作方法:extra_apps右鍵-找到Mark Directory As-選擇Sources Root
(要是找不到這個選項,估計是用的盜版pycharm?)

在解壓的文件里requirements.txt有列出相關的依賴包,用pip安裝

  • django-crispy-forms>=1.6.0
  • django-import-export>=0.5.1
  • django-reversion>=2.0.0
  • django-formtools==1.0
  • future==0.15.2
  • httplib2==0.9.2
  • six==1.10.0

添加xadmin配置

在項目setting.py中INSTALLED_APPS下注冊2個app,xadmin和crispy_forms

INSTALLED_APPS = [
    'django.contrib.admin',          # 管理站點
    'django.contrib.auth',           # 認證系統
    'django.contrib.contenttypes',   # 用於內容類型的框架
    'django.contrib.sessions',       # 會話框架
    'django.contrib.messages',       # 消息框架
    'django.contrib.staticfiles',    # 管理靜態文件框架
    'hello',             # 應用app
    'xadmin',            # 新添加
    'crispy_forms',      # 新添加
]

找到BASE_DIR這行,添加兩行代碼,修改前代碼如下

import os

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

修改后的代碼如下

# 修改后
import os
import sys

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))

urls.py中配置路由

from django.contrib import admin
import xadmin

urlpatterns = [
    url(r'^xadmin/', xadmin.site.urls),   # xadmin
    url(r'^admin/', admin.site.urls),     # 原來的admin
]

setting.py設置成中文

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

USE_I18N = True

USE_L10N = True

USE_TZ = False

之后執行 makemigrations 和migrate,然后runserver啟動服務

python manage.py makemigrations
python manage.py migrate
python manage.py runserver

創建管理員用戶,如果之前admin后台創建過,下面這步可以省略,賬號可以通用

python manage.py createsuperuser

打開xadmin后台

在瀏覽器輸入http://localhost:8000/xadmin/地址,就可以打開xadmin的后台了

登錄的賬戶和密碼跟之前的admin是一樣的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM