xadmin后台管理
1.xadmin安装
- pip install xadmin
- 源码安装:将源码拷贝到项目中,并安装相应的模块包.
配置xadmin路由:
# urls.py
from django.urls import path
import xadmin
urlpatterns = [
path('xadmin/', xadmin.site.urls),
]
注册app
把下面两个app注册到settings.py的INSTALLED_APPS中
#setting.py
'xadmin',
'crispy_forms'
生成xadmin的表
python manage.py makemigrations
python manage.py migrate
设置成中文
#setting.py
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False
models注册 在后台添加对model的管理
- 在app下创建adminx
- 导入模块,创建xadmin管理器类
- 将管理器与model进行注册关联.
# users/adminx.py
import xadmin
from .models import EmailVerifyRecord
#xadmin中这里是继承object,不再是继承admin
class EmailVerifyRecordAdmin(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(EmailVerifyRecord,EmailVerifyRecordAdmin) #注册
xadmin后台管理全局配置
将全局配置修改:
- 如左上角:django Xadmin。下面的我的公司
- 主题修改,app名称汉化,菜单收叠。
- 使用Xadmin的主题功能。
把全站的配置放在users\adminx.py中:
1. 添加主题功能
from xadmin import views
# 创建xadmin的最基本管理器配置,并与view绑定
class BaseSetting(object):
# 开启主题功能
enable_themes = True
use_bootswatch = True
# 将基本配置管理与view绑定
xadmin.site.register(views.BaseAdminView,BaseSetting)
2.全局配置
修改django admin 和下面的我的公司收起菜单
# 全局修改,固定写法
class GlobalSettings(object):
# 修改title
site_title = '后台管理界面'
# 修改footer
site_footer = '公司'
# 收起菜单
menu_style = 'accordion' #菜单风格:可折叠的
# 将title和footer信息进行注册
xadmin.site.register(views.CommAdminView,GlobalSettings)
修改之后,如图所示:
修改app的名字
以users/apps.py为例
将user/apps.py代码替换为:
#users/apps.py
from django.apps import AppConfig
class UsersConfig(AppConfig):
name = 'users'
verbose_name = '用户'
还要在users/__init__.py中引用apps.py的配置
添加代码如下:
# users/__init__.py
default_app_config = 'users.apps.UsersConfig'
其它三个app类似.