前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >day84- <权限组件>-应用权限

day84- <权限组件>-应用权限

原创
作者头像
少年包青菜
修改2019-11-15 10:09:02
4040
修改2019-11-15 10:09:02
举报
文章被收录于专栏:Python 学习
代码语言:python
代码运行次数:0
复制
 1.拷贝 rbac 到新的项目里面去,同时注册 rbac
    2.配置相关的,白名单还有变量名字等等
    3.做数据库表的内容
        1.删除所有的迁移
记录,再根据记录生成所有6张表
    4.在项目根urls里面 include一下 rbac.urls
    5.启动一下项目,准备录入一下权限信息
        1.访问添加角色页面,会页面显示错乱,调节一下样式就好了,基本是因为 css 的问题
        2.添加角色:BOSS、管理员、销售、班主任
        3.进入到menu_list页面,创建菜单
            1.  标题:客户信息管理
                权重: 100             
            2.  标题:班级管理
                权重: 99
        4.访问批量操作页面 multi_permissions(录入原系统的url)
            1.添加所有的名称,在 rbac的views里面修改 multi_permissions if request==XX 的逻辑
            2.自改rbac的models里面的长度,再做一下迁移
            3.  客户列表、私户的所属菜单设置为:客户信息管理
                班级列表的所属菜单设置为:班级管理,先保存一下
            4.添加客户、编辑客户、跟进记录、添加跟进、编辑跟进、报名记录列表、添加报名表、编辑报名表。给私户
            5.添加班级、编辑班级、课程记录列表、添加课程记录、编辑课程记录、学习记录列表。给班级列表
        
        5.忽略列表里面的去掉 rbac,重启项目(录入rbac的url)
            1.添加所有的名称,rbac 的,保存
            2.回头访问 menu_list,创建菜单  --》权限管理
            3.再回来批量操作:
                将角色列表、权限信息、分配权限,分配给权限管理,先提交        
            4.添加角色、编辑角色、删除角色,分配给角色列表
            5.添加菜单、编辑菜单、添加权限、编辑权限、删除权限、批量操作权限,分配给权限信息,更新一下
        6.到分配权限列表
            1.发现用户信息不存在
                1.在crm的models里面一对一关联一下rbac的user,具体的看上课的代码,做数据库迁移
                2.给rbac的user表里面插入用户,再在crm的user表里面关联这个id,返回分配权限的页面
            2.给用户分角色,给角色分权限
            
        7.登录应用权限
            1.在login函数里面,导入写入session的那个方法传进参数
                1.修改user,因为user已经一对一关联了,user.user,其他的不用改
            2.中间件校验,先注册中间件进入settings
                1.中间件里面加一个 try ... except...
                2.在login函数里面接收函数的返回值,if ret:...
        8.应用二级菜单
            1.直接在layout里面做这样的事情
                1.注意模板继承 layout,有block css 、 content 、 js
                2.注释掉原来的左侧菜单 url
                3.{% load rbac %}使用inclusion_tag,还要layout模板中导入 menu.css,这个样式应用于左菜单样式的,js也要导入
                4.使用面包屑导航,现在模板中的位置里面导入
                    1.{% 导入面包屑导航,直接就好了?? %}
        9.权限控制到按钮级别

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
消息队列 TDMQ
消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档