您的位置:首页 > 编程语言 > Go语言

Django_xadmin后台全局设置

2017-08-30 16:47 525 查看
如何使用xadmin主题功能?

  在ursersa app下的adminx.py文件下,注册一个基础设置类BaseSetting,并注册

import xadmin
from xadmin import views

class BaseSetting(object):
"""是否应用主题"""
enable_themes = True
use_bootswatch = True

# 主题注册
xadmin.site.register(views.BaseAdminView, BaseSetting)


如何设置后台左上角的log文字信息和底部信息并让每个app下的数据表收起来?

定义一个全局设置类GlobalSetting,有三个参数相关这个信息设置,并注册

import xamdin
from xadmin import views

class GlobalSetting(object):
"""对后台管理标记信息进行命名,全局设置"""
# 后台头部信息
site_title = '慕学后台管理系统'
# 后台脚底信息
site_footer = '慕学在线网'
# 左侧的app相关的表是否进行抽屉式收拢
menu_style = 'accordion'

# 注册后台设置
xadmin.site.register(views.CommAdminView, GlobalSetting)


如何让后台中app显示为中文信息?

在每个app下,Django会自动生成一个叫apps.py的文件,在OrganizationsConfig类中添加一个字段 verbose_name = 指定中文信息

# _*_ encoding:utf-8 _*_
from __future__ import unicode_literals

from django.apps import AppConfig

class UsersConfig(AppConfig):
  # app名字
name = 'users'
  # 后台对应app显示的中文提示
verbose_name = u'用户信息'


在每个app下__init__.py文件中加上引用,其实是每个UsersConfig类的路径

default_app_config = 'users.apps.UsersConfig' 


   default_app_config = “app名字.apps.apps中类名”

如何让每一条数据显示对象标识,易于辨认?

  在每个model的表类的最后,添加一个uncode方法

def __unicode__(self):
return self.name


python2中为__uncode__方法,在python3中为__str__方法

如何显示后台表数据中的列?

xadmin右上角有个工具菜单栏 显示列 , 按需求自行添加

  但这出现一个问题:

    重新再次点击这个表的时候,会把设置好的列恢复成没有设置之前

  如何解决?

  在adminx文件中每个app对应的表的Admin类中以下字段,还可以完成搜索字段、过滤字段的申明,并注册

  1. list_display = [列名1, 列名2, ……]

    表单显示出来的顺序和list_display中一样

2. search_fields = [列名1, 列名2, ……]

  注意,这里不应该把时间这个字段添加进去,没法对时间进行search

3. list_filter = [列名1, 列名2, ……]

    根据这个字段的数据类型,动态的添加各种不同的过滤规则逻辑,简化数据筛选过程

# _*_ encoding:utf-8 _*_
__author__ = 'beimenchuixue'
__blog__ = 'http://www.cnblogs.com/2bjiujiu/'

import xadmin

from .models import EmailVerifyRecord, Banner
from xadmin import views

class GlobalSetting(object):
"""对后台管理标记信息进行命名,全局设置"""
# 后台头部信息
site_title = '慕学后台管理系统'
# 后台脚底信息
site_footer = '慕学在线网'
# 左侧的app相关的表是否进行抽屉式收拢
menu_style = 'accordion'

class EmailVerifyRecordAdmin(object):
"""对每个表,后台显示初始信息进行设置"""
# list_display 定义显示列, search_fields表示搜索字段, list_filter表示筛选字段
list_display = ['code', 'email', 'send_type', 'send_time']
search_fields = ['code', 'email', 'send_type']
list_filter = ['code', 'email', 'send_type', 'send_time']

class BannerAdmin(object):
"""对每个表,后台显示初始信息进行设置"""

list_display = ['title', 'image', 'url', 'index', 'add_time']
search_fields = ['title', 'image', 'url', 'index']
list_filter = ['title', 'image', 'url', 'index', 'add_time']

# 注册设置
# 注册表,第一张表用户邮箱验证码表,第二张是轮播图表
xadmin.site.register(EmailVerifyRecord, EmailVerifyRecordAdmin)
xadmin.site.register(Banner, BannerAdmin)


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: