DJANGO XADMIN的使用 (二)
上一篇中我們基本完成了xadmin的配置,但是要進行正式使用還需要更多細緻的配置。
1.頁面顯示中文
settings.py中配置(這個和django自帶的admin配置一樣)
1 2 3 4 5 |
|
可見登錄頁面和首頁都變成中文了:
2.xadmin的site-title和site-footer,菜單摺疊
site-title和site-footer都是設置在base_site.html模板頁面中的,可以從xadmin的安裝目錄下的xadmin\templates\xadmin目錄中找到:
從圖片中可以看出來,site_title和site_footer都是可以通過程序設置的變量,那麼想要設置這兩個變量要怎麼做呢?只要在adminx.py文件中添加GlobalSetting類,具體代碼如下:
1 2 3 4 5 6 7 8 9 |
|
效果:
設置菜單摺疊,在上面代碼下添加: menu_style = "accordion"
摺疊菜單如下:
3.設置models的全局圖標
和上面修改title和footer一樣,在類GlobalSetting 中添加:
1 2 3 |
|
這樣我們可以看到圖標的model圖標的變化
至於圖標的對應代碼可以去
http://v3.bootcss.com/components/
http://www.yeahzan.com/fa/facss.html
上查找。
官網是這樣介紹的:
4.設置app標題。
這裏還顯示的是我們app的名字,怎麼修改呢?
涉及2個地方:
1> apps.py裏添加verbose_name
2>__init__.py添加默認配置。
之後我們就可以看到修改後的頁面了:
5.顯示數據詳情
設置 OptionClass 的 show_detail_fields .
效果:
6.列表定時刷新
設置 OptionClass 的 refresh_times 屬性即可. refresh_times 屬性是存有刷新時間的數組. xadmin 默認不開啓該插件.
效果如下:
7.書籤
數據列表頁面特定的數據過濾,排序等結果,添加的書籤還可以在首頁儀表盤中作爲小組件添加。
在Model OptionClass中設定如下屬性:
-
show_bookmarks 屬性:
設置是否開啓書籤功能, 默認爲 True
-
list_bookmarks 屬性:
設置默認的書籤. 用戶可以在列表頁面添加自己的書籤, 你也可以實現設定好一些書籤, 使用實例如下:
使用實例如下:
1 2 3 4 5 6 |
|
效果:
8.圖表
在數據列表頁面,根據列表數據生成圖表,可以指定多個數據列,生成多個圖表。
在Model OptionClass 中設定data_charts屬性,該屬性爲dict類型,key是圖表的標示名稱,value是圖表的具體設置屬性,示例:
1 2 3 4 5 |
|
圖表的主要屬性爲:
title : 圖表的顯示名稱
x-field : 圖表的 X 軸數據列, 一般是日期, 時間等
y-field : 圖表的 Y 軸數據列, 該項是一個 list, 可以同時設定多個列, 這樣多個列的數據會在同一個圖表中顯示
order : 排序信息, 如果不寫則使用數據列表的排序
效果:
9.數據導出
如果想要導出Excel數據,需要安裝xlwt。
默認情況下,xadmin會提供Excel,CSV,XML,json四種格式的數據導出,可以通過設置OptionClass的list_export屬性來指定使用哪些導出格式(四種格式分別用xls,csv,xml,json表示)或是將list_export設置爲None來禁用數據導出功能。
10.過濾
在 Model OptionClass 中設置以下屬性:
list_filter 屬性:
該屬性指定可以過濾的列的名字, 系統會自動生成搜索器
search_fields 屬性:
屬性指定可以通過搜索框搜索的數據列的名字, 搜索框搜索使用的是模糊查找的方式, 一般用來搜素名字等字符串字段
free_query_filter 屬性:
默認爲 True , 指定是否可以自由搜索. 如果開啓自由搜索, 用戶可以通過 url 參數來進行特定的搜索, 例如:
http://xxx.com/xadmin/auth/user/?name__contains=tony
11. 設置只讀字段
在使用xadmin的時候,ModelAdmin默認只有對於model的增刪改查,但是總是有些字段是不希望用戶來編輯的。而 readonly_fields 設置之後不管是admin還是其他用戶都會變成只讀,而我們通常只是想限制普通用戶。 這時我們就可以通過重寫 get_readonly_fields 方法來實現對特定用戶的只讀顯示。
1 2 3 4 5 6 7 8 9 |
|
效果:
普通用戶:
admin:
參考: http://xadmin.readthedocs.io/en/docs-chinese/plugins.html
http://blog.csdn.net/lyysr/article/details/48735053
http://www.cnblogs.com/shhnwangjian/p/6372503.htm