在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' , ]
|
在xadmin中自定义内容的变量及优化汇总的更多相关文章
- Open SuSE中自定义的环境变量
针对与其它发行版本的Linux,网络上给出的添加环境变量的位置都是在/etc/profile文件中添加.在Open SuSE中也有/etc/profile文件,不过从该文件的前几行注释可以看出,官方建 ...
- .net中自定义过滤器对Response内容进行处理
原文:http://www.cnblogs.com/zgqys1980/archive/2008/09/02/1281895.html 代码DEMO:http://files.cnblogs.com/ ...
- vs中调试程序查看变量在内存中的内容的方法
vs中调试程序 查看变量在内存中的内容的方法 https://blog.csdn.net/guojg1988/article/details/42922149 原文链接:http://www.sows ...
- Java中读取配置文件中的内容,并将其赋值给静态变量的方法
应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方 ...
- WPF中自定义标题栏时窗体最大化处理之WindowChrome
注意: 本文方法基础是WindowChrome,而WindowChrome在.NET Framework 4.5之后才集成发布的.见:WindowChrome Class 在.NET Framewor ...
- VS中自定义代码段
如果数据属性的数量比较多,那么输入总是要花费较多的时间,这里有个小技巧,就是使用快捷的输入方法,但是VS自身提供的代码段是有限的,幸运的是我们可以通过:工具> 代码段管理器>添加来添加自定 ...
- jsp页面中自定义标签的小演示
在实习期遇到公司的pg自定义标签了,同事要我自己自学一下 自定义标签是用户定义的JSP语言元素.当JSP页面包含一个自定义标签时将被转化为servlet.JSP标签扩展可以让你创建新的标签并且可以直接 ...
- WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探
原文:WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探 最近因为项目需要,开始学习如何使用WPF开发桌面程序.使用WPF一段时间之后,感 ...
- Django实现标签联动以及xadmin中实现标签联动
如图,即实现点击一个城市,出现对应的学校名称.开始一直以为是建立数据表的时候实现的,原来是通过ajax实现的. 思路:当get请求显示原始状态(即下拉框呈现全部内容).当点击一个城市后,通过ajax的 ...
随机推荐
- ES6的新特性(14)——Iterator 和 for...of 循环
Iterator 和 for...of 循环 Iterator(遍历器)的概念 JavaScript 原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6 又添加了Ma ...
- 6. 网络信息API
一.用数值表示socket地址&用名字表示socket地址(socket地址==>IP地址和端口号) 1. 用数值表示socket地址不便于记忆,也不便于扩展(比如从IPv4转移到IPv ...
- Alpha发布——美工+文案
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2283 一.功能介绍 本团队(可以低头,但没必要)开发的是一款基于腾讯微信 ...
- Java 常用类String类、StringBuffer类
常用类 String类.StringBuffer类 String代表不可变的字符序列 "xxxxxxx"为该类的对象 举例(1) public class Test { publi ...
- 领悟JavaScript面向对象
JavaScript 是面向对象的.但是不少人对这一点理解得并不全面. 在 JavaScript 中,对象分为两种.一种可以称为“普通对象”,就是我们所普遍理解的那些:数字.日期.用户自定义的对象(如 ...
- nodejs之Buffer
Buffer是什么? 简单点理解,buff就是固定长度的uint8array.(es6已实现TypedArray). 由于是固定长度所以没有了splice,concat方法. 由于是固定类型所以没有了 ...
- django-registration中的问题
https://github.com/ubernostrum/django-registration.git https://django-registration.readthedocs.io/en ...
- 第147天:web前端开发中的各种居中总结
一.水平居中 方法① :行内元素 (父元素)text-align,(子元素)inline-block .parent{text-align: center;} .child{display: inli ...
- java 类的强制转型
- noip模拟题《迷》enc
[问题背景]zhx 和他的妹子聊天.[问题描述] 考虑一种简单的加密算法. 假定所有句子都由小写英文字母构成, 对于每一个字母, 我们将它唯一地映射到另一个字母.例如考虑映射规则:a- ...