在xadmin中自定義內容的變量及優化匯總


在網上找了很多有關xadmin的內容,發現都不太全 ,找到一篇總結不錯的 http://www.lybbn.cn/data/bbsdatas.php?lybbs=62

1、list_display 指定xadmin中需要顯示哪些字段信息,以列表顯示

 

 

1
list_display = ('first_name', 'last_name', 'email')

 

2、search_fields 指定哪些字段信息可以被搜索

 

1
search_fields = ('first_name', 'last_name')

 

3、list_filter 添加哪些字段需要進行過濾顯示(添加過濾器)

 

 

1
list_filter = ('publication_date',)  #添加過濾(這里是過濾日期)

 

 

4、date_hierarchy  添加日期過濾器,該字段只能是日期類型

 

1
date_hierarchy = 'publication_date'   #過濾(日期的另外一種過濾方式,可以添加后看一下)

 

5、ordering  顯示的列表以什么進行排序 ,加‘-’表示降序

 

1
ordering = ('-publication_date',)   #排序(這里以日期排序,加‘-’表示降序)

 

6、fields 排除一些不想被其他人編輯的fields,不包含在內的字段不能編輯

 

1
fields = ('title', 'authors', 'publisher')

 

7、filter_horizontal 從‘多選框’的形式改變為‘過濾器’的方式,水平排列過濾器,必須是一個 ManyToManyField類型,且不能用於 ForeignKey字段,默認地,管理工具使用`` 下拉框`` 來展現`` 外鍵`` 字段

 

1
filter_horizontal = ('authors',)

 

8、filter_vertical #同上filter_horizontal,垂直排列過濾器

 

1
filter_vertical = ('authors',)

 

9、raw_id_fields 將ForeignKey字段從‘下拉框’改變為‘文本框’顯示

 

1
raw_id_fields = ('publisher',)

 

10、list_editable 列表顯示的時候,指定的字段可以直接頁面一鍵編輯

 

1
list_editable = ['csdevice']

 

11、model_icon 指該表菜單的icon樣式

 

1
model_icon = 'fa fa-user-secret'

 

12、readonly_fields 指定一些字段為只讀,不可修改

 

1
readonly_fields = ('cservice',)

 

13、exclude 在編輯和查看列表時指定不顯示的字段

 

1
exclude = ['cservice']

 

14、style_fields 指定xadmin插件的樣式

 

1
style_fields = {'csdevice': 'm2m_transfer','csservice': 'ueditor',}

 

15、refresh_times 后台可選擇10秒刷新一次或者60秒刷新一次如下

 

1
refresh_times = [10, 60]

 

16、show_detail_fields 在指定的字段后添加一個顯示數據詳情的一個按鈕

 

1
show_detail_fields=['ttdsn']

 

17、relfield_style后台自定義不是下拉選擇框,而是搜索框(解決了為什么用戶不是下拉框的問題。。)

 

1
relfield_style = 'fk-ajax'

 

18、修改 xadmin 的主題 、title、header、菜單樣式

 

 

1
2
3
4
5
6
7
8
9
10
11
12
from xadmin import views
 
class BaseSetting(object):
    enable_themes = True #開啟主題選擇
    use_bootswatch = True
class GlobalSettings(object):
    site_title = "老眼售后管理系統"  #設置左上角title名字
    site_footer = "lybbn"  #設置底部關於版權信息
    #設置菜單縮放
    menu_style = "accordion"     #設置菜單樣式
xadmin.site.register(views.BaseAdminView, BaseSetting)
xadmin.site.register(views.CommAdminView, GlobalSettings)

 

19、頁面顯示中文和時區

 

在settings.py中配置

 

 

1
2
3
4
5
# LANGUAGE_CODE = 'en-us'
LANGUAGE_CODE = 'zh-hans'
  
# TIME_ZONE = 'UTC'
TIME_ZONE = 'Asia/Shanghai'

 

20、設置xadmin的app標題,在apps.py文件中,添加verbose_name = "客戶管理"

 

 

1
2
3
4
from django.apps import AppConfig
class CustomersConfig(AppConfig):
    name = 'apps.customers'
    verbose_name = "客戶管理"

 

注意需要在settings.py中添加的'customers.apps.CustomersConfig',(需要把apps 中已 mark directory as source root)

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
INSTALLED_APPS = [
    'xadmin',
    'crispy_forms',
    'reversion',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'customers.apps.CustomersConfig',
]

 


免責聲明!

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



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