zoukankan      html  css  js  c++  java
  • crm-全总结

    1.什么是crm

      客户关系管理系统 ,以客户数据为中心建立一个信息收集、管理、分析和利用的信息系统

    2.业务逻辑相关使用crm-app完成

      1)路由项目分发到crm-app (别名 传参 命名空间)

        用户增删改查  

        部门增删改查

        班级增删改查

      2)对应了3个视图函数

        dep.py 

        classes.py

        user.py

        login.py

      3)models的设计表

        用户表(继承rbac的类) ,部门表 ,班级表(外键: 校区表+课程表)

      4)ModelFrom(重点功能)

        生成标签

        数据清洗

      5)html中关注的点()

        ajax实现异步删除 ,特别的效果

        循环展示modelform对象  

    3.rbac权限相关rbac-app

      1)权限的model设计

        权限表

        一级菜单表

        角色表

        rbacuser表 (crm的user需要继承)

      2)init_permission初始化权限相关放入request

        permission_dict  权限字典

        menu_dict     菜单字典

        login函数中使用(保存登录状态)

      3)中间件rbac校验process_request

        白名单

        登录

        登录后不需权限url

        登录后需权限url

      4)权限设计到按钮级别 simple_tags

        使用权限表的name字段来判断 ,是否在该用户request的权限字典中

      5)页码

        页码实例化成类 ,在视图函数中使用

        定义底部页码长度 ,每页显示多少条数据

        切片索引

        左右极值判断

      6)业务记录保留

        使用simple_tag ,从request中获取当前url的页码参数, 页面按钮使用simple_tag做成代页码的按钮

        使用视图函数中的提交时候 ,获取到当前的页码 ,重定向时拼接页码即可

      7)菜单

        一级菜单通过Menu表存储(根据weight权重做成有序字典排序) ,二级菜单外键到一级菜单 ,非菜单权限归属外键连接到自身的二级菜单

        构建menu_dict,通过inclusion_tag完成菜单

      8)面包屑

        面包屑导航 ,暂时依据菜单写了两层 ,首页写死了 ,,,

        通过inclusion_tag从permission_dict拿数据 ,生成面包屑 ,在页面中循环展示()

        

  • 相关阅读:
    JS常用设计模式
    react native两次点击返回按钮退出APP
    react-native-device-info集成遇到的坑
    Django环境搭建之hello world
    jmeter之beanshell断言实例
    jmeter之beanshell断言---数据处理
    Jmeter将JDBC Request查询结果作为下一个接口参数方法(转载)
    App功能测试的注意点
    mybatis的CRUD实例(四)
    mybatis的CRUD实例(三)
  • 原文地址:https://www.cnblogs.com/quguanwen/p/11496425.html
Copyright © 2011-2022 走看看