Django之admin页面样式定制(Simpleui)

2023-11-27 01:15

本文主要是介绍Django之admin页面样式定制(Simpleui),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

好久不见,各位it朋友们!
本篇文章我将向各位介绍Django框架中admin后台页面样式定制的一个插件库,名为Simpleui。

一)简介

SimpleUI是一款简单易用的用户界面(UI)库,旨在帮助开发人员快速构建美观、直观的用户界面。它提供了一系列现代化的UI组件和布局工具,可用于各种类型的应用程序,包括Web应用、移动应用和桌面应用。
SimpleUI的设计理念是简洁、灵活和可定制的。它提供了丰富的预定义样式和布局选项同时也支持开发人员根据项目需求进行自定义样式和布局。这使得开发人员能够快速创建符合自己品牌标识和用户喜好的界面。
SimpleUI的特点之一是响应式设计。它的组件和布局工具可以根据不同的屏幕尺寸和设备类型自动适应,从而确保应用程序在不同的终端上都能提供一致的用户体验。
SimpleUI还提供了丰富的交互功能,包括各种类型的表单元素、弹出窗口、导航栏和菜单等。这些功能可以帮助开发人员快速实现用户输入、数据展示和导航等常见的交互需求。
此外,SimpleUI还支持主题定制和国际化。开发人员可以根据自己的需求选择适合的主题样式,或根据项目需要进行定制。同时,SimpleUI还提供了多语言支持,使得应用程序能够在不同的语言环境下运行。
总之,SimpleUI是一款简单易用、灵活可定制的用户界面库,它提供了丰富的UI组件和布局工具,能够帮助开发人员快速构建美观、直观的用户界面。无论是Web应用、移动应用还是桌面应用,SimpleUI都是一个理想的选择。

二)安装与配置

1.安装

我们安装Simpleui其实跟我们安装python的其他库一样,有两种方法:

a)系统控制代码台(cmd)

pip install django-simpleui

安装后我们可以在pycharm软件中查询到此库

b)pycharm直接安装

image.png
在pycharm中我们可以直接搜索simpleui去获取到这个库然后直接安装

2.配置

a)在settings.py中的配置

我们需要在INSTALLED_APPS中将其载入:

INSTALLED_APPS = ['simpleui',  #请注意!必须放在应用的第一个........
]

我们可以自主选择simpleui的主题,例如:

# 设置默认主题,指向主题css文件名。Admin Lte风格
SIMPLEUI_DEFAULT_THEME = 'admin.lte.css'# 设置默认主题,指向主题css文件名。Element-ui风格
SIMPLEUI_DEFAULT_THEME = 'element.css'# 设置默认主题,指向主题css文件名。layui风格
SIMPLEUI_DEFAULT_THEME = 'layui.css'# 设置默认主题,指向主题css文件名。紫色风格
SIMPLEUI_DEFAULT_THEME = 'purple.css'

当然,有更多的主题供你选择,我们可以在浏览器中打开然后选择自己喜欢的颜色等:
image.png
当然,使用simpleui,它会在右侧给我们打个广告,例如:
image.png
我们可以手动将其关闭:

# 隐藏右侧SimpleUI广告链接和使用分析
SIMPLEUI_HOME_INFO = False
SIMPLEUI_ANALYSIS = False

simpleui也支持我们自定义模块logo,我们需要自己去配置:

SIMPLEUI_CONFIG = {# 是否使用系统默认菜单,自定义菜单时建议关闭。'system_keep': False,# 用于菜单排序和过滤, 不填此字段为默认排序和全部显示。空列表[] 为全部不显示.'menu_display': ['图书管理', '借阅管理','权限认证'],# 设置是否开启动态菜单, 默认为False. 如果开启, 则会在每次用户登陆时刷新展示菜单内容。# 一般建议关闭。'dynamic': False,'menus': []}

在这里menus的自定义选择有很多,我举一个例子给大家:

'menus': [{'app': 'auth',#定义app'name': '权限认证',#展示名字'icon': 'fas fa-user-shield',#图标#其中的功能'models': [{'name': '用户列表',#展示名字'icon': 'fa fa-user',#图标'url': 'auth/user/',#路径},{'name': '用户组',#展示名字'icon': 'fa fa-th-list',#图标'url': 'auth/group/',#路径# 注意url按'/admin/应用名小写/模型名小写/'命名。这里的权限认证是admin模块自带,所以可以写成auth/group},]
}

我将其中的一部分定义选择列举给大家:

字段说明
name菜单名
icon图标,参考element-ui和fontawesome图标
url链接地址,绝对或者相对,如果存在models字段,将忽略url
models子菜单,自simpleui 2021.02.01+版本 支持最多3级菜单,使用方法可以看下方例子
newTab浏览器新标签打开
codename权限标识,需要唯一

b)收藏夹图标自定义

很多读者在这里应该会疑惑收藏夹图标在哪里?
image.png
如何修改呢?我们可以将从网上或者自己设计的图标放在项目的static目录中,取名为:favicon.ico
让其生效有两种方式:
url方式:

urlpatterns = [path('favicon.ico', RedirectView.as_view(url=r'static/favicon.ico')),
]

html方式:

<link rel="shortcut icon" href="/favicon.ico"/>
#这种方式可能会失效,或者没效果。大多是浏览器缓存造成的,清理缓存即可。

当然,我个人比较推荐url方式,更加的直接与稳定。

c)登录页与首页logo自定义

我们需要在settings.py中加入如下的代码:

SIMPLEUI_LOGO='https://www.mldoo.com/static/assets/images/logo.png'

当然我们也可选择自己的本地图片:

SIMPLEUI_LOGO='static/assets/images/logo.png'
#这里的logo.png是自己的本地图片名

在simpleui中默认首页与登录页是一张图片,但是也可自定义:
首页Logo:
我们先在项目中创建文件,目录如下:

templates/admin/index.html

文件中写入:

{% block logo %}<div class="logo-wrap" v-if="!fold"><div class="float-wrap"><div class="left"><img src="{% static '/admin/simplepro/images/logo.png' %}">#src可以写相对路径或者绝对路径,site_header可以写网站名称</div><div class="left"><span>{{ site_header }}</span></div></div></div>
{% endblock %}

登录页logo:
我们先在项目中创建文件,目录如下:

templates/admin/login.html

文件中写入的方式与首页logo一样:

{% block logo %}<div class="banner"><img src="{% static 'admin/simplepro/images/banner.png' %}">#src可以写相对路径或者绝对路径,site_header可以写网站名称</div>
{% endblock %}

这篇关于Django之admin页面样式定制(Simpleui)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/426671

相关文章

Django序列化中SerializerMethodField的使用详解

《Django序列化中SerializerMethodField的使用详解》:本文主要介绍Django序列化中SerializerMethodField的使用,具有很好的参考价值,希望对大家有所帮... 目录SerializerMethodField的基本概念使用SerializerMethodField的

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

Android WebView无法加载H5页面的常见问题和解决方法

《AndroidWebView无法加载H5页面的常见问题和解决方法》AndroidWebView是一种视图组件,使得Android应用能够显示网页内容,它基于Chromium,具备现代浏览器的许多功... 目录1. WebView 简介2. 常见问题3. 网络权限设置4. 启用 JavaScript5. D

Flutter监听当前页面可见与隐藏状态的代码详解

《Flutter监听当前页面可见与隐藏状态的代码详解》文章介绍了如何在Flutter中使用路由观察者来监听应用进入前台或后台状态以及页面的显示和隐藏,并通过代码示例讲解的非常详细,需要的朋友可以参考下... flutter 可以监听 app 进入前台还是后台状态,也可以监听当http://www.cppcn

MySQL表锁、页面锁和行锁的作用及其优缺点对比分析

《MySQL表锁、页面锁和行锁的作用及其优缺点对比分析》MySQL中的表锁、页面锁和行锁各有特点,适用于不同的场景,表锁锁定整个表,适用于批量操作和MyISAM存储引擎,页面锁锁定数据页,适用于旧版本... 目录1. 表锁(Table Lock)2. 页面锁(Page Lock)3. 行锁(Row Lock

HTML5中下拉框<select>标签的属性和样式详解

《HTML5中下拉框<select>标签的属性和样式详解》在HTML5中,下拉框(select标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中选择值的方式,本文将深入探讨select标签的... 在html5中,下拉框(<select>标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中

前端 CSS 动态设置样式::class、:style 等技巧(推荐)

《前端CSS动态设置样式::class、:style等技巧(推荐)》:本文主要介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外,还可以结合计算属性来生成复杂的类名或样式对象,详细内容请阅读本文,希望能对你有所帮助...

禁止HTML页面滚动的操作方法

《禁止HTML页面滚动的操作方法》:本文主要介绍了三种禁止HTML页面滚动的方法:通过CSS的overflow属性、使用JavaScript的滚动事件监听器以及使用CSS的position:fixed属性,每种方法都有其适用场景和优缺点,详细内容请阅读本文,希望能对你有所帮助... 在前端开发中,禁止htm

SpringBoot定制JSON响应数据的实现

《SpringBoot定制JSON响应数据的实现》本文主要介绍了SpringBoot定制JSON响应数据的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录前言一、如何使用@jsonView这个注解?二、应用场景三、实战案例注解方式编程方式总结 前言

CSS自定义浏览器滚动条样式完整代码

《CSS自定义浏览器滚动条样式完整代码》:本文主要介绍了如何使用CSS自定义浏览器滚动条的样式,包括隐藏滚动条的角落、设置滚动条的基本样式、轨道样式和滑块样式,并提供了完整的CSS代码示例,通过这些技巧,你可以为你的网站添加个性化的滚动条样式,从而提升用户体验,详细内容请阅读本文,希望能对你有所帮助...