第37章 Django集成高颜值UI,美...

能坚持到这的朋友,恭喜你,终于有幸可以见到Django最激动人心、最撩人心的一面了。为了凑数字,废话说过太多了,这次就直奔主题吧。

37.1 创建工程并进行配置

用PyCharm、Eclipse开发工具创建系统:sales。

1. 调整语言和时区,修改settings.py文件

LANGUAGE_CODE = 'zh-hans'TIME_ZONE = 'Asia/Shanghai'

2. 调整系统标题,修改url.py文件

from django.contrib import adminfrom django.urls import pathadmin.site.site_title = '销售管理系统'admin.site.site_header = '销售管理系统'urlpatterns = [    path('', admin.site.urls),]

3. 生成model对应的数据表(Django自带的后台管理系统admin)

python3 manage.py migrate
  1. 创建管理员默认账号:admin,密码:123456
python3 manage.py createsuperuser

37.2 选择Django UI框架

为了解决Django后台系统颜值的问题,众多程序猿,脑洞大开,浑身解数,不断探索,好在终有所成。

据我不完全了解到的,就有xadmin、Django jet和django-simpleui。如果单从颜值上来说的话, xadmin比后两者略逊一筹,加上它现在已经停止更新了,咱就不选用它了。

Django jet和django-simpleui颜值大同小异,差不多。可django-simpleui更贴近国人的操作习惯,所以最终选择用它。

到https://github.com/newpanjing/simpleui下载源代码。解压缩后,把文件夹里的simpleui,拷贝到sales下。

simpleui利用同模板名称和静态文件优选选择(找到就不在寻找)的原理,在不更改Django源代码的基准上,替换后台系统admin的UI风格和布局。它是居于element UI进行改造的。权限内容,用自定义标签和过滤器进行了调整,国际化则采用js进行实现。

37.3 集成UI框架

在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',]

在settings.py文件中的STATIC_URL下面(文件尾部),添加以下参数。

# 配置静态文件路径STATIC_ROOT = os.path.join(BASE_DIR, 'static')# 不让simpleui 不要收集相关信息SIMPLEUI_ANALYSIS = False# js采用离线的,默认为联网的SIMPLEUI_STATIC_OFFLINE = True

如果你对收集数据实在太敏感的话,可以到唯一一个Python源代码文件(自定义标签用)simpletags.py和simpleui/templates/admin/index.html模板文件下删除收集数据相关的代码和标签。

37.4 UI框架内容调整

框架集成好之后,运行工程看看效果。你会发现登录窗口上的logo不是你的。管理窗口上的改变字体(功能)图标不是你想要的,home图标(功能)也不是你想要的话…,就对它们进行一顿修理。

1. 替换logo

自行制作一张大小为383*383px的png图标,覆盖掉static/admin/simpleui-x/img下的logo.png文件。

2. 去掉图标

去掉管理窗口的字体、最大化和home图标,在templates/admin/index.html文件里,注释掉以下代码。

{# <el-button icon='fas fa-font' circle v-waves @click='fontClick()'></el-button> #}{# <el-button :icon='this.zoom?'fas fa-compress-arrows-alt':'fas fa-expand-arrows-alt'' @click='goZoom()' circle></el-button>#}{# <el-button icon='fas fa-home' @click='goIndex('{{ 'SIMPLEUI_INDEX' |get_config }}')' circle v-waves></el-button>#}

3. 改变文字

改管理窗口中的“选择主题”为“主题”,在static/admin/simpleui-x/locale/zh-hans.js文件里进行修改。

'Change theme': '主题',

37.5 积小成大

犹如唐僧去西天取经,经过九九八十一难,终于取得真经,迎娶白富美。高颜值的UI,令人心情愉快,久久不能忘怀。

如果自我感觉良好的话,那就举起大拇哥,为自己点个赞吧。

赞后,仔细核对一下内容,看看自己的logo设计了没?瞧瞧去掉字体图标了没?想想为什么去掉最大化图标?为什么去掉home图标?

然后,然后...,就没有然后了。

注销系统,回到登录窗口时,是不是总感觉少了点什么?没错,少了验证码。没有这个拦截机器人盗刷的家伙,你我怎能安心?

走,集成验证码去。

(0)

相关推荐