ISEE小语
“任何消耗你的人和事,多看一眼都是你的不对。”——《屏蔽力》
前期分享的Django框架使用,默认后台管理界面太过于单一,我们基于原Admin找到了django-simpleui,本次记录分享。
simpleui是一个为Django项目提供的现代化UI主题。它旨在替换 Django 默认的管理后台界面,提供一个更现代、更美观且功能更强大的用户界面,从而提升用户的管理体验。
simpleui使用起来非常的方便,并且具有以下优点:
内置28款流行的主题 pip闪电安装100%兼容原生admin无需修改代码 多标签页面,各个模块更加清晰明了 配置简单,极速上手,在settings.py中加入simpleui后启动立即生效,效率提升 100%!让后端开发得心应手 现代化设计:Element-UI + Vue 加持,让古老的django admin 焕然一新。
官网地址:
https://gitee.com/tompeppa/simpleui
小栈环境:
Pycharm 2023.1
Python 3.9.16
三方包安装:
pip install django-simpleui
前 提
使用django-simpleui的前提,是一个Django项目,这里就不再详述,有需要的朋友,可以看前期的分享。
一篇文章学会Django-从无到有
Isee小栈,公众号:ISEE小栈一篇文章学会Django-从无到有
本次我们基于前期分享的【djangoProject】项目,使用simpleui做后台管理,将默认的admin后台管理替换掉。
开始使用
我们现在将自己项目的settings.py文件找到,并在其中INSTALLED_APPS的第一行加入simpleui
INSTALLED_APPS = [
"simpleui",
"django.contrib.admin",
"django.contrib.auth",
"django.contrib.contenttypes",
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.staticfiles",
"myapp",
]
(左右滑动查看完整代码)
添加完成后,我们启动项目,在浏览器中打开:
http://127.0.0.1:8000/admin/login/
看一下效果:
这个登录页面已经变化为simpleui的效果了
接下来我们登录到主页看一下里面展示
用户名和密码,在上次创建项目的时候已经新建好了,这里我们直接使用即可。那我们在登录页面输入:
用户名:admin
密码为:q12345678
登录到主页:
切换主题:
用户管理:
书籍管理:
常用配置
添加simpleui后,在默认的simpleui上面再次配置,让后台管理页面显示的更加美观舒服。
注:以下配置均在settings.py文件中
一、设置默认语言
在settings.py文件中,替换为zh-hans,即为界面汉化
zh-hans是中国大陆地区使用的简体中文的语言代码
LANGUAGE_CODE = 'zh-hans'
二、设置时区
Asia/Shanghai 表示使用上海的本地时间。当你在项目中处理时间和日期时,我们默认会使用这个时区。
TIME_ZONE = 'Asia/Shanghai'
三、关闭右侧广告
# 关闭右侧广告
SIMPLEUI_HOME_INFO = False
四、隐藏首页的快捷操作和最近动作
# 隐藏首页的快捷操作和最近动作
SIMPLEUI_HOME_QUICK = False # 快捷操作
SIMPLEUI_HOME_ACTION = False # 最近动作
(左右滑动查看完整代码)
打开首页看一下效果:
目录字体由原来的英文变更为中文了,首页默认的全部不显示了。
五、设置默认主题
示例:设置Element-ui风格
# 设置默认主题
SIMPLEUI_DEFAULT_THEME = 'element.css'
(左右滑动查看完整代码)
看一下,界面风格是不是上第一次打开的不一样了呢!
其他主题有:
根据想要的默认风格,直接指向主题css文件名即可!
当然,在界面【改变主题】仍可以切换自己喜欢的风格
六、自定义首页
SimpleUI默认首页指向自定义的url
以下实例中指向以前分享的【大数据可视化平台】
# 首页设置
SIMPLEUI_HOME_PAGE = 'http://127.0.0.1:5555/' # 指向页面
SIMPLEUI_HOME_TITLE = '大数据可视化平台' # 首页标题
SIMPLEUI_HOME_ICON = 'fa fa-code' # 首页图标
(左右滑动查看完整代码)
七、设置右上角Home图标跳转
设置右上角Home图标跳转链接,会新建另外一个窗口打开
以下实例中打开的也是以前分享的【大数据可视化平台】
SIMPLEUI_INDEX = 'http://127.0.0.1:5555/'
(左右滑动查看完整代码)
点击Home图标,看效果
八、两个额外设置(非常有必要了解)
离线模式设置
设置为 True 时,表示启用了 simpleui 的离线模式。在离线模式下,simpleui 将不会尝试从其服务器下载静态文件(如 JavaScript、CSS 文件等),确保 simpleui 在没有互联网连接的情况下也能正常工作,通过使用本地的静态资源而不是在线资源。
# 离线模式
SIMPLEUI_STATIC_OFFLINE = True
simpleui开发分析
设置为 True 时,表示允许 simpleui 收集一些使用数据并发送回 simpleui 的服务器。
注意:出于隐私或安全的考虑,一些项目可能会选择关闭这个功能
# simpleui开发分析
SIMPLEUI_ANALYSIS = False
(左右滑动查看完整代码)
页面优化
一、修改后台名称
打开djangoProject/myapp/admin.py文件,添加代码:
admin.site.site_header = 'ISEE小栈管理后台' # 设置header
admin.site.site_title = 'ISEE小栈管理后台' # 设置title
(左右滑动查看完整代码)
admin.py完整代码是:
from django.contrib import admin
from myapp.models import Book
# Register your models here.
class BookAdmin(admin.ModelAdmin):
fields = ['no', 'name', 'author']
list_display = ['no', 'name', 'author', 'created_at']
search_fields = ['no', 'name']
list_filter = ['author', 'created_at']
list_per_page = 10
admin.site.site_header = 'ISEE小栈管理后台' # 设置header
admin.site.site_title = 'ISEE小栈管理后台' # 设置title
(左右滑动查看完整代码)
到登录页面:
登录到首页:
二、设置页面LOGO图标
首先在项目djangoProject/myapp下新建static/logo/logo.png
目的是引入本地的logo图标
打开djangoProject/settings.py文件,添加配置:
# 设置图标
SIMPLEUI_LOGO ='/static/logo/logo.png'
(左右滑动查看完整代码)
如果没有显示,那么需要检查一下在settings.py文件中的
STATIC_URL = "static/"
三、修改APP名称
打开djangoProject/myapp/apps.py文件,添加:
verbose_name = '图书馆管理'
(左右滑动查看完整代码)
apps.py完整代码:
from django.apps import AppConfig
class MyappConfig(AppConfig):
default_auto_field = "django.db.models.BigAutoField"
name = "myapp"
verbose_name = '图书馆管理'
(左右滑动查看完整代码)
四、自定义菜单
打开djangoProject/settings.py文件,添加配置:
# 自定义菜单
SIMPLEUI_CONFIG = {
'system_keep': False, # 关闭系统菜单
'menu_display': ['图书馆管理', '认证和授权'],
'dynamic': True, # 设置是否开启动态菜单, 默认为False. 如果开启, 则会在每次用户登陆时动态展示菜单内容
'menus': [{
'app': 'myapp',
'name': '图书馆管理',
'icon': 'fas fa-book-reader',
'models': [{
'name': '书籍',
'icon': 'fas fa-book',
'url': 'myapp/book/'
}]},
{
'app': 'auth',
'name': '认证和授权',
'icon': 'fas fa-shield-alt',
'models': [{
'name': '用户',
'icon': 'far fa-user',
'url': 'auth/user/'
}, {
'name': '组',
'icon': 'fas fa-users-cog',
'url': 'auth/group/',
}]
}]
}
(左右滑动查看完整代码)
注意:一般情况下自定义菜单需要关闭系统菜单,即'system_keep': False
以上在自定义菜单使用的图标icon,可以参考
https://fontawesome.com/v5/search
总结
本次分享是基于前面文章是《一篇文章学会Django-从无到有》
了解django的朋友,有兴趣的可以直接了解本篇,页面看起来很舒服、简洁。下面将源码整理:
其中首页自定义的url是用的前期分享的【Flask制作大屏显示-实时数据动态更新】(文尾有链接),主要是想把大屏嵌入到项目中,别无他意。使用django_simpleui的朋友可根据自己实际项目使用。
点个“赞”和“在看”,是对小栈最大的支持!
后台回复“django_simpleui”即可获取源码!
文章就分享到这儿,喜欢就点个赞吧!