Django+SimpleUI
1.安装
pip install django-simpleui -i https://pypi.tuna.tsinghua.edu.cn/simple
2.修改配置文件
# 修改project的setting文件,在INSTALLED_APPS 首行引入simple应用
INSTALLED_APPS = [
'simpleui',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
...
]
3.字符集及时区设置
# 修改project的setting文件
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_TZ = False # 这里务必调整为False,否则时区设置无效
4.设置静态资源及debug
DEBUG=True STATIC_URL = '/astatic/' # 浏览器直接访问静态文件
STATIC_ROOT = os.path.join(BASE_DIR, 'astatic') # 开发环境不需要(线上:python manage.py collectstatic 复制到该路径下) python3 manage.py collectstatic 将静态资源克隆到项目的静态资源目录下
5.数据库连接配置
# 这里以postgresql数据库为例,通常建议使用mysql数据库,多数据库连接不在此处讨论
# postgresql
## 安装postgresql驱动
pip install psycopg2-binary
#pip install psycopg2
## 这里需要设置postgresql的schema信息,通过options字典指定配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME' : 'moon',
'USER': 'postgres',
'PASSWORD': 'postgres',
'HOST':'127.0.0.1',
'PORT': '5432',
'OPTIONS': {
'options': '-c search_path=myapp'
},
}
} # mysql
## 安装mysql驱动
pip install pymysql
## init文件引入pymysql 用于代理django认可的mysql驱动,同时由于django的版本问题对pymysql的版本存在要求需要增加一个版本欺骗动作
import pymysql
pymysql.version_info = (1, 3, 13, "final", 0)
pymysql.install_as_MySQLdb()
## setting增加mysql连接串配置信息
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME':'jay_django_test',
'HOST':'127.0.0.1',
'USER':'root',
'PASSWORD':'qweasd',
'PORT':'3306',
}
}
6.执行admin迁移
python manage.py migrate
7.创建admin超级管理员
python manage.py createsuperuser
8.执行迁移
python manage.py makemigrations python manage.py migrate
admin首页布局设置
# 如上图所示,首页基础展示项目由三个部分组成,往往我们需要对首页进行定制重写,这里我们先把这几个展示模块先关闭
# project的setting文件最后追加如下设置,即可关闭以上几个模块以及信息采集模块
SIMPLEUI_HOME_INFO = False
SIMPLEUI_HOME_QUICK = False
SIMPLEUI_HOME_ACTION = False
SIMPLEUI_ANALYSIS = False
# SIMPLEUI_HOME_TITLE = '百度一下你就知道' # 【首页】按钮文案配置
SIMPLEUI_HOME_PAGE = 'https://www.baidu.com' # 可用于嵌入其他链接,这里可以直接方便的嵌入报表链接
SIMPLEUI_HOME_ICON = 'el el-icon-platform-eleme'
列表页查询定制:
# admin文件中定义展示页面,后续方便页面管理,可以独立文件,通过import方式引入进行注册
from myapp.models import job_detail @admin.register(job_detail)
class job_detail(admin.ModelAdmin):
# 设置页面可以展示的字段
list_display = ('JOB_TYPE', 'JOB_NAME','JOB_COMMENT',
'IN_PARA','IN_PARA_COMMENT',
'OUT_PARA','OUT_PARA_COMMENT')
# 默认不配置的话,第一个字段会存在链接到记录编辑页面
# list_display_links = None
list_display_links = ('JOB_NAME',)
# 设置过滤选项
list_filter = ('JOB_TYPE', 'CREATED_TIME',)
# 每页显示条目数 缺省值100
list_per_page = 1
# show all页面上的model数目,缺省200
# list_max_show_all = 200
# 设置可编辑字段 如果设置了可以编辑字段,页面会自动增加保存按钮
list_editable = ('IN_PARA_COMMENT',)
# 按日期月份筛选 该属性一般不用
# date_hierarchy = 'CREATED_TIME'
# 按发布日期降序排序
ordering = ('-CREATED_TIME',)
# 搜索条件设置
search_fields = ('JOB_NAME',) # 表头字段显示中文名称,这里需要修改models文件,在定义字段的时候增加别名
# eg1:JOB_NAME = models.CharField('任务名称',max_length=128)
# eg2: name = models.CharField(max_length=30,verbose_name=u"姓名") # 字段关联展示
## 场景1、关联其他表的数据展示,此处外键展示不做演示,生产环境尽量减少外键使用 ## 场景2、枚举信息转义展示
### 此处需要在model定义页面通过枚举值转义配置对应展示中文信息,参考model模块代码设置 """
这种禁用编辑链接的放法只是不让它在页面中显示,即把超链接去掉了,
但是还是可以通过手动输入url的方式来进入编辑页面。
不过可以配合设置fieldsets或者readonly_fieldss来达到目的
注意:这里建议删除按钮要禁用掉,否则只有拥有view权限的人员依然可以进行删除动作,或者需要进行人员角色判断
"""
def has_add_permission(self, request):
# 禁用添加按钮
return True def has_delete_permission(self, request, obj=None):
# 禁用删除按钮
return False
更多可参考:Django+SimpleUI快速开发指南 - 知乎 (zhihu.com)
Django+SimpleUI的更多相关文章
- 项目完成小结 - Django3.x版本 - 开发部署小结 (2)
前言 好久没更新博客了,最近依然是在做之前博客说的这个项目:项目完成 - 基于Django3.x版本 - 开发部署小结 这项目因为前期工作出了问题,需求没确定好,导致了现在要做很多麻烦的工作,搞得大家 ...
- python之路76 路飞项目 企业项目类型、软件开发流程、路飞项目需求、pip永久换源、虚拟环境、路飞项目前后端创建、包导入、后端项目目录调整
知识获取渠道 cnblogs csdn 掘金 思否 找工作app boss直骗.拉钩.智联.猎聘.脉脉(内推,hr). 企业项目类型 1.面向互联网用户:商城类项目 微信小程序商城 2.面向互联网用户 ...
- vue整体回顾
vue大回顾 1 前端发展史 react vue---> 前端工程化---> 前后端分离 大前端:flutter uni-app 2 Vue介绍 单页面应用(spa) 组件化开发 mvvm ...
- django 实战3 simpleui
pip3 install django-import-export pip3 install django-simpleui pip3 install mysqlclient python3 mana ...
- django admin站点美化
使用django-simpleui 安装 pip install django-simpleui 源码地址 https://github.com/newpanjing/simpleui django ...
- 纯django开发博客系统
企业级教程:纯django开发博客系统 1.视频教程 https://www.duanshuilu.com/ 2.教程文档 https://www.duanshuilu.com/ 0.课程简介1.简价 ...
- Django快速开发实践:Drf框架和xadmin配置指北
步骤 既然是快速开发,那废话不多说,直接说步骤: 安装Djagno 安装Django Rest Framework 定义models 定义Rest framework的serializers 定义Re ...
- 给Django的Admin添加自定义Action 并移除需要选择对象的限制
不得不说,Django的Admin真的给开发带来很多便利,这不,我又来折腾了,这次是添加自定义的action 这个自定义的Action可以看看官方文档的介绍,很详细,不再赘述. https://doc ...
- Django(66)admin后台管理注册用户
前言 我们使用django创建用户可以使用注册接口的方式,也可以使用django自带的后台管理系统,这里就介绍使用后台管理系统创建用户 admin后台管理系统 在使用之前我们可以使用第三方的插件,来美 ...
- [Django REST framework - RBAC-基于角色的访问控制、base64编码 、xadmin的使用]
[Django REST framework - RBAC-基于角色的访问控制.base64编码 .xadmin的使用] RBAC-基于角色的访问控制 RBAC 是基于角色的访问控制(Role-Bas ...
随机推荐
- mysql修改编码utf8
摘要:使用apt-get 命令安装的mysql默认不是utf8.在这里记录一下如何将编码修改成utf8. Linux学习笔记之--ubuntu中mysql修改编码utf8 一:查看mysql版本 1. ...
- Qml 实现瀑布流布局
[写在前面] 最近在刷掘金的时候看到一篇关于瀑布流布局的文章,然鹅他们的实现都是前端的那套,就想着 Qml 有没有类似实现. 结果百度了一圈也没有( T_T Qml 凉了凉了 ),于是,我按照自己理解 ...
- 上架难、买量贵?即构 Web 端 1v1 方案全力加速泛娱乐出海
1v1 视频社交以其功能简洁.互动性强.匹配效率高等特点,在陌生人社交玩法中饱受用户欢迎,平台仅需让两个用户通过匹配.选择等形式连通后,用户即可在房内进行 1v1 视频社交,且在社交的同时又极具私密性 ...
- .NET 开源的功能强大的人脸识别 API
前言 人工智能时代,人脸识别技术已成为安全验证.身份识别和用户交互的关键工具. 给大家推荐一款.NET 开源提供了强大的人脸识别 API,工具不仅易于集成,还具备高效处理能力. 本文将介绍一款如何利用 ...
- Avalonia upgrade from 0.10 to 11.x
Avalonia 从0.10版本升级到11.x版本.由于11.x新版本与旧版本对比发生了破坏性的变化,因此官方给出了升级的攻略可以参考. https://docs.avaloniaui.net/doc ...
- 深入理解 Nuxt.js 中的 app:error 钩子
title: 深入理解 Nuxt.js 中的 app:error 钩子 date: 2024/9/27 updated: 2024/9/27 author: cmdragon excerpt: 摘要: ...
- is特性
is是特性在动态路由的时候使用 ,在挂载点 component 使用,用来判断哪个组件显示 :
- 静态库封装之ComStr类
ComStr.h #pragma once #include <string> #include <vector> using namespace std; class Com ...
- 0602-nn.Module
0602-nn.Module 目录 一.nn.Module 1.1 构建一层网络--全连接层 1.2 构建多层网络--多层感知机 pytorch完整教程目录:https://www.cnblogs.c ...
- Android复习(四)权限—>应用权限最佳做法
应用权限最佳做法 权限请求可以保护设备上的敏感信息,仅在需要访问信息以使应用正常工作时才应使用.利用本文档提供的技巧,您可能无需请求访问此类信息即可实现相同(或更好)的功能:但本文不会详细讨论权限在 ...