使用django+x-admin管理后台模板搭建管理后台
一、环境需求
1.django:3.1
2.python:3.7
3.x-admin:2.2
4.pycharm:2020.3.2
5.ubuntu:20.0.4
6.mysql:8.0
二、功能需求
1.要使用django提供的auth类完成自定义user用户、group组、permission权限,进行用户管理。
2.要使用django提供的login和logout类完成登录与登出验证。
3.要配置路由和相关类完成django自定义管理后台的配置。
4.要完成在前端对数据库进行增删改查的操作以及操作权限的设置。
5.要完成自定义x-admin的设置。
三、设计
(一)数据库设计
用户数据库与用户组数据库是多对一的关系,一个用户可以在多个组中;一个组中可以有多个用户。
用户权限数据库和用户组是多对一的关系,一个用户组可以有多个权限,一个权限也可以在多个用户组中。
在本项目中一共包含四个组每个组有增删改查四种权限。产品的增删改查只能由产品部修改,
产品信息只能由销售部修改、管理员可以查看所有数据、普通用户只能查看个人信息。
权限类别
- 产品部(progroup):修改产品(changeproject)、添加产品(addproject)、删除产品(deleteproject)、查看产品信息(selectproject)
- 销售部(salegroup):修改产品价格(chproprice)、添加产品信息(addproinfo)、删除产品信息(delproinfo)、查看产品信息(selectproinfo)
- 管理部(managegroup):查看部门信息(managedeptinfo)、查看角色信息(selectuserinfo)、查看产品信息(selectproinfo)
角色类别
- 用户角色(users):用户姓名(username),用户密码(password),用户id(user_id)
- 产品角色(proect):产品名称(proname),产品信息(proinfo),产品id(pro_id),产品价格(proprice)
- 管理员角色(admininfo):管理员姓名(adminname),管理员密码(adminpassword),管理员id(admin_id)
组类别
- 部门角色(deptinfo):部门名称(deptname),部门id(dept_id)
1.用户数据表(userdb.sql)
字段名 |
user_id |
username |
password |
字段类型 |
int |
varchar |
varchar |
字段长度 |
8 |
30 |
128 |
字段约束 |
primary__key |
unique=True |
null=False |
2.用户组数据表(groupdb.sql)
字段名 |
user_id |
group_id |
groupname |
字段类型 |
int |
foreigKey |
varchar |
字段长度 |
8 |
8 |
30 |
字段约束 |
null=False |
primary_key |
null=False |
3.用户权限数据表(permissiondb.sql)
字段名 |
perm__id |
group_id |
perm__name |
字段类型 |
foreigkey |
int |
varchar |
字段长度 |
8 |
8 |
30 |
字段约束 |
primary_key |
null=False |
null=False |
4.产品数据表(projectdb.sql)
字段名 |
pro__id |
group_id |
pro__name |
proprice |
proinfo |
字段类型 |
foreigkey |
int |
varchar |
price |
varchar |
字段长度 |
8 |
8 |
30 |
8 |
8 |
字段约束 |
primary_key |
null=False |
null=False |
null=False |
null=False |
(四)功能设计
1.用户,组,权限自定义设置
2.用户登录自定义设置
3.管理后台x-admin的搭建
4.用户登录验证
5.在x-admin管理台中使用相应角色登陆后对数据库进行增删改查的操作
django+x-admin管理后台模板开发管理后台案例(设计部分)
原文:https://www.cnblogs.com/hotboy393/p/dango_x-admin-demo.html