一 简介:小小的记录下具体的思路和相关代码

二 具体阐述

# setting处理逻辑

PERMISSION_SESSION_KEY = 'permissions' #这里填写需要存取权限的session-key
  MENU_SESSION_KEY = 'menus'
  WHITE_URL_LIST = [ #放置的url白名单
  r‘^/login/$‘,
  r‘^/logout/$‘,
  r‘^/reg/$‘,
  r‘^/admin/.*‘,
   ]

#login处理逻辑
     user1=User.objects.filter(name=name,pwd=pwd).first() #登录校对获取queryset对象
     request.session['user_id']=user1.pk #sesssion存储用户ID
     Role.objects.filter(user__name=user1).values('permissions__url').distinct()#去重取得用户的权限列表
     request.session[setting.PERMISSION_SESSION_KEY]=permission_list # session存储用户权限列表
     #middle处理逻辑

from django.utils.deprecation import MiddlewareMixin
    from django.conf import settings

# 白名单设立

for i in settings.WHITE_URL_LIST:
    if re.match(i, current_url):
     return

# 登录判断
    if not request.session.get("user_id"):
  # 权限判断
   for ret in request.session["permission"]:
     if re.search(ret,currentpath):

转载于:https://www.cnblogs.com/danhuangpai/p/11017651.html

django基础知识~RBAC实验部分代码记录相关推荐

  1. 【文件上传漏洞11】中间件文件解析漏洞基础知识及实验——Nginx

    目录 1 文件解析漏洞概述 1.1 概述 1.2 Nginx 解析漏洞 1.2.1 空字节解析漏洞 1.2.2 文件名逻辑漏洞 CVE-2013-4547 1.2.3 CGI-PHP 解析漏洞 2 实 ...

  2. 计算机基础知识掌握欠缺,《计算机基础知识》实验教学改革探讨.pdf

    <计算机基础知识>实验教学改革探讨.pdf Science& TechnologyVision 科 技 视 界 科技 探·索·争鸣 计<算机基础知识>实验教学改革探讨 ...

  3. 股票基础知识 - 通过股票前缀代码判断股票是什么类型,属于哪个板块

    文章目录 股票基础知识 - 通过股票前缀代码判断股票是什么类型,属于哪个板块 1 上海证券市场 2 深圳证券市场 3 新股申购 4 配股代码 股票基础知识 - 通过股票前缀代码判断股票是什么类型,属于 ...

  4. 【Python数据结构系列】☀️《树与二叉树-基础知识》——知识点讲解+代码实现☀️

    文章目录 数据结构之树和二叉树 第一部分 树和二叉树的基础知识 1.树和二叉树的定义 1.1 树的定义 1.2 树的基本术语 1.3 二叉树的定义 2.二叉树的性质和存储结构 2.1 二叉树的性质 2 ...

  5. 计算机基础知识上实验课教案,高中信息技术上册《第4课 计算机基础知识》教案...

    高中信息技术上册<第4课 计算机基础知识>教案 第4课 计算机基础知识 设计 要素 设 计 内 容 练习 内容 分析 本节通过上机练习让学生了解计算机文化的概念,介绍信息对人类社会发展地作 ...

  6. Django入门+实战教程+个人笔记+实时更新+基础知识 ->(个人学习记录笔记)

    文章目录 1.初识 2.登录,登录首页实现步骤 3.GET方式_登录功能 1.post请求的请求报文 2.post响应报文 3.GET和POST请求区别 4.GET请求方式 5.POST请求方式 6. ...

  7. python开发框架——Django基础知识(七)

      hello!我是小J,每天一个小知识,一起学python,让技术无限发散. 模板 1. 模板配置 1.1 模板简介 1.2 模板的使用流程 1.3 模板配置 2. 模板使用 2.1 变量 2.2 ...

  8. Java基础知识学习:简单随手记录(3)

    学习视频链接:https://www.bilibili.com/video/BV1fh411y7R8?p=1&vd_source=1635a55d1012e0ef6688b3652cefcdf ...

  9. 【PHP基础】Cookie基础知识、应用案例代码及攻防

    目录 1 Cookie 理论基础 1.1 Cookie 简介 1.2 Cookie 认证机制 1.3 Cookie 属性 1.4 Cookie的安全性问题 2 Cookie 应用 2.1 Cookie ...

最新文章

  1. Linux音频设备驱动
  2. VRRP+MSTP 实现流量分流与核心层备份
  3. docker-compose command 执行多条指令
  4. Tkinter的Scrollba组件
  5. 【算法】一个简单的决策树(DT)原理
  6. 计算机网络-思维导图(6)应用层
  7. 关联规则挖掘算法_基于Apriori关联规则的协同过滤算法
  8. 安装gem_Python安装第三方库及常见问题处理方法汇总
  9. 小小一行Python命令,居然把电脑变成服务器
  10. glue | 关于胶水函数用法的几个例子
  11. PAT甲级1010 (进制和二分法)
  12. AUTOSAR中CAN通信协议栈概述
  13. 进阶 | 手把手教你模拟键盘和鼠标操作-ActionChains
  14. 线程启动、结束,创建线程多法、join,detach
  15. 使用pip报错error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools“:
  16. 多开助手完美版,APP一键多开,支持安卓10
  17. 推荐一个阅读代码、文档的利器:屏幕贴图工具
  18. 是时候要说再见了,春风十里,不如邮你!
  19. deepin系统修改IP地址记录
  20. 地方科技局重点科技项目在线申报管理系统

热门文章

  1. boost::lambda::is_instance_of_1用法的测试程序
  2. boost::fibers模块实现适应非阻塞的测试程序
  3. ITK:自适应直方图均衡图像滤波器
  4. VTK:PolyData之ThresholdCells
  5. VTK:Remote之FrenetSerretFrameDemo
  6. VTK:图片之Flip
  7. C语言链表返回第n个到最后的节点的算法(附完整源码)
  8. C语言实现最短路径Bellman-Ford算法(附完整源码)
  9. 「C++: Eigen」学习笔记
  10. Zookeeper命令行操作(常用命令;客户端连接;查看znode路径;创建节点;获取znode数据,查看节点内容,设置节点内容,删除节点;监听znode事件;telnet连接zookeeper)