Django xadmin安裝及使用詳解
一.簡(jiǎn)介
xadmin 是一個(gè)開源項(xiàng)目。 針對(duì)于 django admin ,頁面美化程度,功能不完善 等問題 , 額外開發(fā)的一個(gè)模塊。目前 xadmin 的最新版本已經(jīng)是 xadmin 3.0 ,但是 xadmin 3.0 已經(jīng)變成了一個(gè)純前端項(xiàng)目,有興趣的同學(xué)可以自己研究下。目前 作者已經(jīng)不對(duì) xadmin 2.0 做版本維護(hù)了,所以社區(qū)并不是很好,建議選擇 其他的持續(xù)維護(hù)的開源項(xiàng)目。
文檔:https://xadmin.readthedocs.io/en/latest/index.html
二.安裝
環(huán)境:python 3.6
Django 2.2
1.通過如下命令安裝xadmin的最新版,它文檔里面的安裝方法好久沒有更新了,會(huì)導(dǎo)致你安裝不成功,所以我們使用下面的網(wǎng)址進(jìn)行安裝
pip3 install https://codeload.github.com/sshwsfc/xadmin/zip/django2
2.在配置文件中注冊(cè)如下應(yīng)用
INSTALLED_APPS = [ ... 'xadmin', 'crispy_forms', 'reversion', ... ]
3.修改語言和時(shí)區(qū)
# 修改使用中文界面 LANGUAGE_CODE = 'zh-Hans' # 修改時(shí)區(qū) TIME_ZONE = 'Asia/Shanghai'
4.xadmin有建立自己的數(shù)據(jù)庫模型類,需要進(jìn)行數(shù)據(jù)庫遷移
友情提示:在執(zhí)行這一步時(shí)先到配置文件看一下自己當(dāng)前Django版本
我的原本是Django2.2版本,安裝完xadmin后自動(dòng)給我升級(jí)為3.2版本,導(dǎo)致執(zhí)行數(shù)據(jù)庫遷移命令時(shí)報(bào)錯(cuò)
python3 manage.py makemigrations python3 manage.py migrate
5.配置路由信息
import xadmin xadmin.autodiscover() # version模塊自動(dòng)注冊(cè)需要版本控制的 Model from xadmin.plugins import xversion xversion.register_models() urlpatterns = [ path(r'xadmin/', xadmin.site.urls), ]
7.如果沒有創(chuàng)建超級(jí)用戶需要?jiǎng)?chuàng)建,我是因?yàn)橐呀?jīng)創(chuàng)建了就不需要了
python3 manage.py createsuperuser
三.全局配置
import xadmin from xadmin import views class BaseSetting(object): """xadmin的基本配置""" enable_themes = True # 開啟主題切換功能 use_bootswatch = True # 引導(dǎo)控制盤(其實(shí)就是我們的左側(cè)菜單欄) xadmin.site.register(views.BaseAdminView, BaseSetting) class GlobalSettings(object): """xadmin的全局配置""" site_title = "kuokay" # 設(shè)置站點(diǎn)標(biāo)題 site_footer = "kuokay學(xué)python" # 設(shè)置站點(diǎn)的頁腳 menu_style = "accordion" # 設(shè)置菜單折疊 xadmin.site.register(views.CommAdminView, GlobalSettings)
站點(diǎn)Model管理
xadmin可以使用的頁面樣式控制基本與Django原生的admin一直。
可以在models類中定義個(gè)__str__方法來定義對(duì)象顯示成什么內(nèi)容
- list_display 控制列表展示的字段
- search_fields 控制可以通過搜索框搜索的字段名稱,xadmin使用的是模糊查詢
- list_filter 可以進(jìn)行過濾操作的列,對(duì)于分類、性別、狀態(tài)
- ordering 默認(rèn)排序的字段
- show_detail_fields 在列表頁提供快速顯示詳情信息
- list_editable 在列表頁可以快速直接編輯的字段
- refresh_times 指定列表頁的定時(shí)刷新
- list_export 控制列表頁導(dǎo)出數(shù)據(jù)的可選格式
- show_bookmarks 控制是否顯示書簽功能
- data_charts 控制顯示圖表的樣式
- model_icon 控制菜單的圖標(biāo)【圖標(biāo)的設(shè)置可以參考font-awesome的圖標(biāo)css名稱】
- readonly_fields 在編輯頁面的只讀字段
- exclude 在編輯頁面隱藏的字段,比如判斷這個(gè)數(shù)據(jù)是否刪除的delete_status字段,一般就是用來標(biāo)識(shí)一下字段是不是被刪除了,但是數(shù)據(jù)庫中不刪除
到此這篇關(guān)于Django xadmin安裝及使用詳解的文章就介紹到這了,更多相關(guān)Django xadmin安裝使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實(shí)現(xiàn)屏保計(jì)時(shí)器的示例代碼
這篇文章主要介紹了python實(shí)現(xiàn)屏保計(jì)時(shí)器的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08使用Python實(shí)現(xiàn)ELT統(tǒng)計(jì)多個(gè)服務(wù)器下所有數(shù)據(jù)表信息
這篇文章主要介紹了使用Python實(shí)現(xiàn)ELT統(tǒng)計(jì)多個(gè)服務(wù)器下所有數(shù)據(jù)表信息,ETL,是英文Extract-Transform-Load的縮寫,用來描述將數(shù)據(jù)從來源端經(jīng)過抽取(extract)、轉(zhuǎn)換(transform)、加載(load)至目的端的過程,需要的朋友可以參考下2023-07-07python實(shí)現(xiàn)機(jī)械分詞之逆向最大匹配算法代碼示例
這篇文章主要介紹了python實(shí)現(xiàn)機(jī)械分詞之逆向最大匹配算法代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12Python爬蟲中Selenium實(shí)現(xiàn)文件上傳
這篇文章主要介紹了Python爬蟲中Selenium實(shí)現(xiàn)文件上傳,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12