1. 程式人生 > 程式設計 >Django xadmin安裝及使用詳解

Django xadmin安裝及使用詳解

一.簡介

xadmin 是一個開源專案。 針對於 django admin ,頁面美化程度,功能不完善 等問題,額外開發的一個模組。目前 xadmin 的最新版本已經是 xadmin 3.0 ,但是 xadmin 3.0 已經變成了一個純前端專案,有興趣的同學可以自己研究下。目前 作者已經不對 xadmin 2.0 做版本維護了,所以社群並不是很好,建議選擇 其他的持續維護的開源專案。

文件:https://xadmin.readthedocs.io/en/latest/index.html

二.安裝

環境:python 3.6
Django 2.2

1.通過如下命令安裝xadmin的最新版,它文件裡面的安裝方法好久沒有更新了,會導致你安裝不成功,所以我們使用下面的網址進行安裝

pip3 install https://codeload.github.com/sshwsfc/xadmin/zip/django2

2.在配置檔案中註冊如下應用

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

3.修改語言和時區

# 修改使用中文介面
LANGUAGE_CODE = 'zh-Hans'

# 修改時區
TIME_ZONE = 'Asia/Shanghai'

4.xadmin有建立自己的資料庫模型類,需要進行資料庫遷移

友情提示:在執行這一步時先到配置檔案看一下自己當前Django版本

我的原本是Django2.2版本,安裝完xadmin後自動給我升級為3.2版本,導致執行資料庫遷移命令時報錯

python3 manage.py makemigrations
python3 manage.py migrate

5.配置路由資訊

import xadmin
xadmin.autodiscover()

# version模組自動註冊需要版本控制的 Model
from xadmin.plugins import xversion
xversion.register_models()

urlpatterns = [
  path(r'xadmin/',xadmin.site.urls),]

7.如果沒有建立超級使用者需要建立,我是因為已經建立了就不需要了

python3 manage.py createsuperuser

三.全域性配置

import xadmin
from xadmin import views

class BaseSetting(object):
  """xadmin的基本配置"""
  enable_themes = True # 開啟主題切換功能
  use_bootswatch = True # 引導控制盤(其實就是我們的左側選單欄)

xadmin.site.register(views.BaseAdminView,BaseSetting)

class GlobalSettings(object):
  """xadmin的全域性配置"""
  site_title = "kuokay" # 設定站點標題
  site_footer = "kuokay學python" # 設定站點的頁尾
  menu_style = "accordion" # 設定選單摺疊

xadmin.site.register(views.CommAdminView,GlobalSettings)

站點Model管理

xadmin可以使用的頁面樣式控制基本與Django原生的admin一直。

可以在models類中定義個__str__方法來定義物件顯示成什麼內容

  • list_display 控制列表展示的欄位
  • search_fields 控制可以通過搜尋框搜尋的欄位名稱,xadmin使用的是模糊查詢
  • list_filter 可以進行過濾操作的列,對於分類、性別、狀態
  • ordering 預設排序的欄位
  • show_detail_fields 在列表頁提供快速顯示詳情資訊
  • list_editable 在列表頁可以快速直接編輯的欄位
  • refresh_times 指定列表頁的定時重新整理
  • list_export 控制列表頁匯出資料的可選格式
  • show_bookmarks 控制是否顯示書籤功能
  • data_charts 控制顯示圖表的樣式
  • model_icon 控制選單的圖示【圖示的設定可以參考font-awesome的圖示css名稱】
  • readonly_fields 在編輯頁面的只讀欄位
  • exclude 在編輯頁面隱藏的欄位,比如判斷這個資料是否刪除的delete_status欄位,一般就是用來標識一下欄位是不是被刪除了,但是資料庫中不刪除

到此這篇關於Django xadmin安裝及使用詳解的文章就介紹到這了,更多相關Django xadmin安裝使用內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!