一、简介
simpleui 是一个基于django后台管理的主题,主要是为了美化和简化django内置的后台管理界面。
内置28款流行的主题
pip闪电安装100%兼容原生admin无需修改代码
多标签页面,各个模块更加清晰明了
配置简单,极速上手,在settings.py中加入simpleui后启动立即生效,效率提升 100%!让后端开发得心应手。
Element-UI + Vue 加持,让古老的django admin 焕然一新。
二、安装simpleui模板
pip install simpleui
在项目中的settings.py文件中加入一行simpleui
INSTALLED_APPS = [
'simpleui',
]
1、在settings.py中加入:
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
2、在项目下新建目录static
3、克隆静态资源到项目的静态目录,然后交由nginx处理
python manage.py collectstatic
启动项目查看效果
python manage.py runserver
浏览器打开:
http://localhost:8000/admin/输入用户名/密码登录:
基本配置
SIMPLEUI_LOGO = 'https://avatars2.githubusercontent.com/u/13655483?s=60&v=4'
首页默认展示3个模块,服务器信息、快速操作、最近动作,大家可以根据需要来显示或者隐藏某些模块。
隐藏:
SIMPLEUI_HOME_INFO = False
显示:
SIMPLEUI_HOME_INFO = True
隐藏:
SIMPLEUI_HOME_QUICK = False
显示:
SIMPLEUI_HOME_QUICK = True
隐藏:
SIMPLEUI_HOME_ACTION = False
显示:
SIMPLEUI_HOME_ACTION = True
默认开启,统计分析信息只是为了更好的帮助simpleui改进,并不会读取敏感信息。并且分析数据不会分享至任何第三方。
SIMPLEUI_ANALYSIS = False
值 | 说明 |
---|---|
True | 收集分析,一天只上报一次分析数据。默认为True |
False | 不收集分析信息 |
system_keep 保留系统菜单
该字段用于告诉simpleui,是否需要保留系统默认的菜单,默认为False,不保留。 如果改为True,自定义和系统菜单将会并存
menu_display 过滤显示菜单和排序功能
该字段用于告诉simpleui,是否需要开启过滤显示菜单和排序功能。
默认可以不用填写,缺省配置为默认排序,不对菜单进行过滤和排序。
开启认为传一个列表,如果列表为空,则什么也不显示。列表中的每个元素要对应到menus里面的name字段
dynamic 开启动态菜单功能
该字段用于告诉simpleui,是否需要开启动态菜单功能。
默认可以不用填写,缺省配置为False,不开启动态菜单功能。
开启为True,开启后,每次用户登陆都会刷新左侧菜单配置。
需要注意的是:开启后每次访问admin都会重读配置文件,所以会带来额外的消耗。
menus说明
字段 | 说明 |
---|---|
name | 菜单名 |
icon | 图标,参考element-ui和fontawesome图标 |
url | 链接地址,绝对或者相对,如果存在models字段,将忽略url |
models | 子菜单 |
例子
import time SIMPLEUI_CONFIG = { 'system_keep': False, 'menu_display': ['Simpleui', '测试', '权限认证', '动态菜单测试'], # 开启排序和过滤功能, 不填此字段为默认排序和全部显示, 空列表[] 为全部不显示. 'dynamic': True, # 设置是否开启动态菜单, 默认为False. 如果开启, 则会在每次用户登陆时动态展示菜单内容 'menus': [{ 'name': 'Simpleui', 'icon': 'fas fa-code', 'url': 'https://gitee.com/tompeppa/simpleui' }, { 'app': 'auth', 'name': '权限认证', 'icon': 'fas fa-user-shield', 'models': [{ 'name': '用户', 'icon': 'fa fa-user', 'url': 'auth/user/' }] }, { 'name': '测试', 'icon': 'fa fa-file', 'models': [{ 'name': 'Baidu', 'url': 'http://baidu.com', 'icon': 'far fa-surprise' }, { 'name': '内网穿透', 'url': 'https://www.wezoz.com', 'icon': 'fab fa-github' }] }, { 'name': '动态菜单测试' , 'icon': 'fa fa-desktop', 'models': [{ 'name': time.time(), 'url': 'http://baidu.com', 'icon': 'far fa-surprise' }] }] }
如果SIMPLEUI_CONFIG中存在menus字段,将会覆盖系统默认菜单。并且menus中输出的菜单不会受权限控制。
simpleui对所有菜单提供了一个默认的file图标,是为了统一风格。也许你并不喜欢,你可以选择关闭默认图标
SIMPLEUI_DEFAULT_ICON = False
值 | 说明 |
---|---|
True | 开启默认图标,默认为True |
False | 关闭默认图标 |
simpleui仅为系统默认模块提供了图标,如果要为其他模块指定图标,可以自定义配置。图标参考请查阅:图标说明
优先级: 自定义->系统配图->默认图标
注:simpleui 原则上不涉及代码,所以采用setting方式。后续可考虑扩展Model的 Meta class 进行配置图标
字段 | 说明 |
---|---|
name | 模块名字,请注意不是model的命名,而是菜单栏上显示的文本,因为model是可以重复的,会导致无法区分 |
icon | 图标 |
例子: |
SIMPLEUI_ICON = {
'系统管理': 'fab fa-apple',
'员工管理': 'fas fa-user-tie'
}
https://github.com/newpanjing/simpleui_demo
https://github.com/newpanjing/simpleui
https://github.com/newpanjing/simpleui/blob/master/QUICK.md