backend介绍
开发环境:
python 3.6. django 2.1.2
一个django 后台管理的app
将后台管理组件化, 不依赖于项目, 只要简单配置就可以使用, 开发业务逻辑也非常方便
其主要包含三个内容:
- RBAC模式的权限系统
- stark组件
- filemanage文件管理
目录结构

表结构

一般RBAC模式用户与角色关系是多对多管理, 这里我用的是FK关联.
RBAC权限系统
为什么程序需要权限控制?
对于不同用户使用系统时候就应该有不同的功能
所以,只要有不同角色的人员来使用系统,那么就肯定需要权限系统。
不同的角色展示不同的菜单


即使通过输入url访问也会拦截

请求访问流程

stark组件
stark组件是根据Django admin为原型写的一个组件,能够让我们告别增删改查不依赖于admin
名字由来
stark来源于《冰与火之歌》里面的史塔克。
史塔克家族是北境最古老也是最重要的家族,是北境各大小封臣的总领主,在被伊耿一世征服之前曾是独立数千年的北境之王。
名字叫啥都可以,看你的爱好了!貌似大家都会叫stark组件。
注册流程

详细介绍
这个组件是通过网络视频, 老男孩教育的武沛齐讲师学习的
他的个人博客
https://www.cnblogs.com/wupeiqi/
通过单例模式生成一个实例, 然后使用app下任意model注册,就会生成增删改查4个url, 可以自定制批量操作, 自定制搜索字段, 自定制显示字段.
stark组件太牛皮了, 我必须另开一个随笔来介绍
文件管理
原本打算使用elfinder作为文件管理的插件
但最新的elfinder对python的连接器停留在8年前的版本
https://github.com/Studio-42/elfinder-python
支持django的yawd_elfinder插件最新也在4年前
https://github.com/ppetrid/yawd-elfinder
并且对python3/django2 使用很不好, 网上文档的特别少,
然后自己看源码修改, 后端一直找不到驱动目录, 源码各种字符编码转换看的我都要吐了, 经过一周折腾我放弃使用elfinder改用django filemanage
django filemanager
源码地址 : https://github.com/IMGIITRoorkee/django-filemanager
django filemanager对windows下编码有一点小小的bug, 就是win和linux的目录分割符不同, 这个问题会导致win下编码报错

就是这里 他原来直接用split('\')作为目录分隔符
其他小功能介绍
geetest滑动验证

天气api

二级菜单

表单验证

删除提醒

检验修改信息

动态更换主题

文件管理

backend介绍的更多相关文章
- 著名ERP厂商的SSO单点登录解决方案介绍一
SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他应用中用于同一个用户 ...
- (转帖)开源容器集群管理系统Kubernetes架构及组件介绍
最近在搞Docker还有她的管理工具,选型Kuberetes后,被她的术语和概念搞得晕头转向...看了一篇文章还不错,放到这里分享出来. 地址:http://www.linuxidc.com/Linu ...
- geotrellis使用(二十)geotrellis1.0版本新功能及变化介绍
目录 前言 变化情况介绍 总结 一.前言 之前版本是0.9或者0.10.1.0.10.2,最近发现更新成为1.0.0-2077839.1.0应该也能称之为正式版了吧.发现其中有很多变化, ...
- REST服务介绍二
之前一篇文章写过REST服务介绍, 今天再次来自回顾一下. REST是一种架构风格. 首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是 HTTP 规范 ...
- 烂泥:高负载均衡学习haproxy之关键词介绍
本文由ilanniweb提供友情赞助,首发于烂泥行天下 上一篇文章我们简单讲解了有关haproxy的安装与搭建,在这篇文章我们把haproxy配置文件中使用到的关键词一一介绍下. 关注我微信ilann ...
- KVM 介绍(8):使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机 [Nova Libvirt QEMU/KVM Live Migration]
学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...
- KVM 介绍(7):使用 libvirt 做 QEMU/KVM 快照和 Nova 实例的快照 (Nova Instances Snapshot Libvirt)
学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...
- KVM 介绍(3):I/O 全虚拟化和准虚拟化 [KVM I/O QEMU Full-Virtualizaiton Para-virtualization]
学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...
- Django中Celery的实现介绍(一)
Django中Celery的实现 Celery官网http://www.celeryproject.org/ 学习资料:http://docs.jinkan.org/docs/celery/ Cele ...
随机推荐
- WPF 时间编辑控件的实现(TimeEditer)
一.前言 有个项目需要用到时间编辑控件,在大量搜索无果后只能自己自定义一个了.MFC中倒是有这个控件,叫CDateTimeCtrl.大概是这个样子: 二.要实现的功能 要实现的功能包含: 编辑时.分. ...
- element admin中使用nprogress实现页面加载进度条
主要是知道是nprogress这个组件实现的就可以了,组件的使用方法可参考:https://blog.csdn.net/ltr15036900300/article/details/47321217 ...
- 基于YOLO3对图像加框的函数draw_image()
def draw_bbox(image, bboxes, class_i, show_label=True): # 将中心点坐标与w,h通过变化为左上角与右下角坐标 bboxes_change = n ...
- 关于spring中请求返回值的json序列化/反序列化问题
https://cloud.tencent.com/developer/article/1381083 https://www.jianshu.com/p/db07543ffe0a 先留个坑
- EF自动创建数据库步骤之一(实体类写法)
文章演示使用EF自动创建数据库第一个步骤创建实体类. 一.创建表映射实体类 using System; using System.Collections.Generic; using System.C ...
- JavaWeb 过滤敏感词汇
提交的表单数据,常常要检查有没有敏感词汇,如果有,需要给出提示,或者替换为*. 检查.替换敏感词汇有3种常用的方式 (1)在Servlet中操作. (2)在Filter中先检查.如果要替换敏感词汇,r ...
- WorkFlow四:添加用户决策步骤
沿用之前的例子,做个用户决策步骤. 1.事物代码SWDD: 进入抬头,点击类的绑定按钮. 2.选择类的绑定,点击继续. 这是类的绑定已经变色了.这时候点击保存,再点击返回到图片逻辑流界面. 3.在发送 ...
- 【团队项目1】 团队展示&选题
一.团队展示 1. 队名:这次稳了 2. 队员: 莫少政 3117004667 (队长) 黄思扬 3117004657 余泽端 3117004679 江海灵 3117004658 温治乾 311700 ...
- Spring Cloud Sleuth + Zipkin 链路监控
原文:https://blog.csdn.net/hubo_88/article/details/80878632 在微服务系统中,随着业务的发展,系统会变得越来越大,那么各个服务之间的调用关系也就变 ...
- 团队第四次作业:alpha1发布成绩汇总
一.作业题目 团队第四次作业:alpha1发布 二.作业评分标准 博客评分规则(总分100)博客要求 给出开头和团队成员列表(10') 给出发布地址以及安装手册(20') 给出测试报告(40') 给出 ...