使用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)

![](https://images.cnblogs.com/cnblogs_com/blogs/677001/galleries/1960799/t_210413120708user-group-perm%E6%95%B0%E6%8D%AE%E6%B5%81%E5%9B%BE.png)

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管理后台模板开发管理后台案例(设计部分)的更多相关文章

  1. 蓝色的cms企业记账管理后台模板源码——后台

    链接:http://pan.baidu.com/s/1bpxKGBP 密码:suda

  2. HBuilder后台保活开发(后台自动运行,定期记录定位数据)

    http://ask.dcloud.net.cn/question/28090 后台自动运行,定期记录定位数据 分类:HTML5+   各位新年好 小弟以前用hbuilder开发过几个项目,现在有一新 ...

  3. H5网站模板——前台和后台

    以下是比较典型的前台或者后台的H5模板: html5优分期大学生分期购物商城模板链接:http://pan.baidu.com/s/1dEUAzBz 密码:j150 红色的五金电气商城网站模板链接:h ...

  4. django之创建第9个项目-管理后台admin

    django之创建第9个项目-管理后台admin配置 1.配置setting文件INSTALLED_APPS = (    'django.contrib.auth',    'django.cont ...

  5. 使用django的admin的后台管理界面

    django的admin后台管理界面是方便我们对数据库操作的  是一个在浏览器显示的  图形化界面数据库操作 我们先在django中的admin中把我们需要在图形化界面中进行操作的表导入进去: 先把m ...

  6. django的admin后台管理

    Admin后台管理 要进入admin后台管理首先要创建管理员账户 createsuperuser 其中密码要大于8位 使用之前要到应用下的admin.py中注册要管理的模型表 from django. ...

  7. django的admin后台管理如何更改为中文

    新建Django的admin后端控制为英文显示,为了可以使其显示中文,可以将 setting.py配置文件修改 # LANGUAGE_CODE = 'en-us' # # # # # TIME_ZON ...

  8. Django学习笔记(2)——模型,后台管理和视图的学习

    一:Web投票示例 本节我们首先从全局范围再复习一下Django的概念,让自己对Django的设计理念, 功能模块,体系架构,基本用法有初步的印象. Django初始的详细博客内容:请点击我 该应用包 ...

  9. Django笔记 —— Admin(Django站点管理界面)

    最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...

随机推荐

  1. React-Native Tutorials

    React-Native Tutorials https://egghead.io/courses/react-native-fundamentals part free https://egghea ...

  2. React Hooks & react forwardRef hooks & useReducer

    React Hooks & react forwardref hooks & useReducer react how to call child component method i ...

  3. H5 & animation

    H5 & animation https://m.tb.cn/h.VYB7BAx?sm=51fda6 UA checker webp image & css animation CDN ...

  4. NGK公链有发展前景吗?

    最近网络中经常能看到一个新公链项目NGK的消息,很多朋友也都私下表示过,非常看好今年的NGK.对此,小编对NGK做了一些功课,发觉到NGK未来在商业Dapp应用的发展前景,下面就给大家分享一下我的理解 ...

  5. BGV币与YFI币、YFII币存在着怎样的相关性?

    大多数的玩家并没有长期的打算,而是更倾向于关注短期利好的币种.比如最近在圈内赚足眼球的YFI,之所以能够成为明星角色,并非它的技术和平台,而是因为它在短期就创造了86倍的暴涨.YFI币的暴涨在某种程度 ...

  6. 翻译:《实用的Python编程》01_07_Functions

    目录 | 上一节 (1.6 文件) | 下一节 (2.0 处理数据) 1.7 函数 随着程序开始变大,我们会想要有条理地组织这些程序.本节简要介绍函数.库模块以及带有异常的错误处理. 自定义函数 对你 ...

  7. django学习-22.admi管理后台页面的文案展示等相关配置

    目录结果 1.前言 2.完整的操作步骤 2.1.第一步:对[settings.py]里的相关常量的值做如下修改 2.2.第二步:重启django项目[helloworld]的服务 2.3.第三步:重新 ...

  8. 如何在一台开发机中同时配置github、gitlab等多个账户

    本文参考博文. 如果公司的代码同步环境在gitlab上,而自己有很多项目托管在github.我们需要做一些额外的配置实现两者的无缝切换. 步骤 我的开发机是macbook,如果属于不同系统,找到该系统 ...

  9. Python学习笔记_类

    class Animal(object): # 定义父类animal def __init__(self,name,sound): # 初始化属性 name sound self.name = nam ...

  10. JUnit5学习之三:Assertions类

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...