• 第九节,Django+Xadmin打造上线标准的在线教育平台—xadmin全局配置


    第九节,Django+Xadmin打造上线标准的在线教育平台—xadmin全局配置

    1、xadmin主题设置

    要使用xadmin主题,需要在一个app下的adminx.py后台注册文件里,写一个主题管理器绑定xadmin的views.BaseAdminView注册
    一般我们会在用户相关的app下的adminx.py后台注册文件里写

    复制代码
    #!/usr/bin/env python
    # -*- coding:utf8 -*-
    
    import xadmin
    from xadmin import views                # 导入xadmin的views
    
    from .models import Users, Email, Banner
    
    
    class BasdSetting(object):              # 主题管理器
        enable_themes = True                # 使用主题
        use_bootswatch = True
    xadmin.site.register(views.BaseAdminView, BasdSetting)      # 将主题管理器绑定views.BaseAdminView注册
    
    
    class UsersAdmin(object):               # 自定义用户信息数据表管理器类
        # 设置xadmin后台显示字段
        list_display = ['username', 'password', 'nick_name', 'gender', 'email', 'address', 'mobile',
                        'first_name', 'last_name', 'is_active', 'birday', 'last_login', 'date_joined']
        # 设置xadmin后台搜索字段,注意:搜索字段如果有时间类型会报错
        search_fields = ['username', 'password', 'nick_name', 'gender', 'email', 'address', 'mobile']
        # 设置xadmin后台过滤器帅选字段,时间用过滤器来做
        list_filter = ['username', 'password', 'nick_name', 'gender', 'email', 'address', 'mobile',
                        'first_name', 'last_name', 'is_active', 'birday', 'last_login', 'date_joined']
    xadmin.site.register(Users, UsersAdmin)     # 将户信息数据表注册到xadmin后台显示
    
    
    class EmailAdmin(object):
        list_display = ['code', 'email', 'send_type', 'send_time']
        search_fields = ['code', 'email', 'send_type']
        list_filter = ['code', 'email', 'send_type', 'send_time']
    xadmin.site.register(Email, EmailAdmin)
    
    
    class BannerAdmin(object):
        list_display = ['title', 'index', 'image', 'url', 'add_time']
        search_fields = ['title', 'index', 'image', 'url']
        list_filter = ['title', 'index', 'image', 'url', 'add_time']
    xadmin.site.register(Banner, BannerAdmin)
    复制代码


    2、头部系统名称和底部版权以及导航折叠设置
    需要在一个app下的adminx.py后台注册文件里,写一个头部系统名称和底部版权管理器绑定xadmin的views.CommAdminView注册
    一般我们会在用户相关的app下的adminx.py后台注册文件里写

    复制代码
    import xadmin
    from xadmin import views                # 导入xadmin的views
    
    from .models import Users, Email, Banner
    
    
    class BasdSetting(object):              # 主题管理器
        enable_themes = True                # 使用主题
        use_bootswatch = True
    xadmin.site.register(views.BaseAdminView, BasdSetting)      # 将主题管理器绑定views.BaseAdminView注册
    
    
    class GlobalSettings(object):                               # 头部系统名称和底部版权管理器
        site_title = '玉秀管理系统'                              # 头部系统名称
        site_footer = '玉秀管理系统,玉秀公司版权所有'             # 底部版权
        menu_style = 'accordion'                                # 设置数据管理导航折叠,以每一个app为一个折叠框
    xadmin.site.register(views.CommAdminView, GlobalSettings)   # 头部系统名称和底部版权管理器绑定views.CommAdminView注册
    
    
    class UsersAdmin(object):               # 自定义用户信息数据表管理器类
        # 设置xadmin后台显示字段
        list_display = ['username', 'password', 'nick_name', 'gender', 'email', 'address', 'mobile',
                        'first_name', 'last_name', 'is_active', 'birday', 'last_login', 'date_joined']
        # 设置xadmin后台搜索字段,注意:搜索字段如果有时间类型会报错
        search_fields = ['username', 'password', 'nick_name', 'gender', 'email', 'address', 'mobile']
        # 设置xadmin后台过滤器帅选字段,时间用过滤器来做
        list_filter = ['username', 'password', 'nick_name', 'gender', 'email', 'address', 'mobile',
                        'first_name', 'last_name', 'is_active', 'birday', 'last_login', 'date_joined']
    xadmin.site.register(Users, UsersAdmin)     # 将户信息数据表注册到xadmin后台显示
    
    
    class EmailAdmin(object):
        list_display = ['code', 'email', 'send_type', 'send_time']
        search_fields = ['code', 'email', 'send_type']
        list_filter = ['code', 'email', 'send_type', 'send_time']
    xadmin.site.register(Email, EmailAdmin)
    
    
    class BannerAdmin(object):
        list_display = ['title', 'index', 'image', 'url', 'add_time']
        search_fields = ['title', 'index', 'image', 'url']
        list_filter = ['title', 'index', 'image', 'url', 'add_time']
    xadmin.site.register(Banner, BannerAdmin)
    复制代码

    3、导航app名称设置成中文,需要以下两步

    在当前app目录下的apps.py文件里配置后台要显示的中文名称

    apps.py文件

    复制代码
    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    from django.apps import AppConfig
    
    
    class AppCoursesConfig(AppConfig):
        name = 'app_courses'            # 当前app名称
        verbose_name = '课程管理'        # 要设置的中文名称
    复制代码

    在当前app目录下的__init__.py文件里应用app中文名称设置类的路径

    default_app_config = app中文名称设置类的路径,从app开始到类

    __init__.py文件

    default_app_config = 'app_courses.apps.AppCoursesConfig'

  • 相关阅读:
    常量,基本运算符,if判断,while循环
    python解释器的垃圾回收机制,小整数池,变量的三个特性,is与==,与用户交互,数据类型的基本使用,基本运算符
    编程语言的分类,python解释器多版本共存.执行python的两种方式,变量,用户与程序交互
    编程简介
    bootstrap 无限极菜单
    JQuery lhgdialog使用
    mysql 不是主键不能删除的保护问题解决办法?
    遍历所有的选中的radio的个数和值
    MySQL 的 RowNum 实现
    Ibatis 测试出SQL
  • 原文地址:https://www.cnblogs.com/aooy/p/12022103.html
Copyright © 2020-2023  润新知