zoukankan      html  css  js  c++  java
  • 在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',
    ]

     

  • 相关阅读:
    Nginx开启Gzip详解
    Nginx基础知识之————多模块(非覆盖安装、RTMP在线人数实例安装测试)
    ESA2GJK1DH1K安全篇: Android以SSL(单向认证)方式连接MQTT服务器
    ESA2GJK1DH1K安全篇: Wi-Fi 模块(8266)以SSL方式连接MQTT服务器(V0.1)
    单片机模块化程序: μCOS-II中内存管理程序使用说明
    单片机模块化程序: 数据缓存封装-内存管理实现(内存块长度充足版)
    单片机模块化程序: 数据缓存封装-环形队列实现
    单片机模块化程序: 难道有环形队列串口发送数据就万事大吉了吗
    【SpringCloud】初识springCloud
    【mybatis源码学习】mybtias扩展点
  • 原文地址:https://www.cnblogs.com/fly-kaka/p/9835663.html
Copyright © 2011-2022 走看看