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拿数据 ,生成面包屑 ,在页面中循环展示()

    

crm-全总结的更多相关文章

  1. Dynamic CRM 2013学习笔记(二十六)报表设计:Reporting Service报表 动态参数、参数多选全选、动态列、动态显示行字体颜色

    上次介绍过CRM里开始报表的一些注意事项:Dynamic CRM 2013学习笔记(十五)报表入门.开发工具及注意事项,本文继续介绍报表里的一些动态效果:动态显示参数,参数是从数据库里查询出来的:参数 ...

  2. python 全栈开发,Day117(popup,Model类的继承,crm业务开发)

    昨日内容回顾 第一部分:权限相关 1. 权限基本流程 用户登录成功后获取权限信息,将[权限和菜单]信息写入到session. 以后用户在来访问,在中间件中进行权限校验. 为了提升用户体验友好度,在后台 ...

  3. 如何利用CRM系统打通营销全渠道?

    企业经常通过不同渠道组织各种形式的营销推广,可惜,这些营销推广的效果往往差强人意. 相关研究表明,很多营销推广不理想的主要原因是不同营销渠道之间没有打通数据,不清楚每个营销渠道或营销策划的投入产出.推 ...

  4. CRM实施目标、需求、策略、厂商、流程等基本介绍全解

    事实证明,有不少实施了CRM系统的企业经历了失败.这是为何?而据一个在线CRM论坛调查其失败的原因:       67%是因为缺乏组织和管理变革去适应CRM:如组织机构未调整.未融入企业文化.流程不清 ...

  5. python全栈开发day87~91-整个流程梳理、CRM功能、知识点梳理

    1.流程 1. stark组件 1. 启动 2.注册 3.url设计 4.视图函数设计 1.展示数据头 2.展示数据 3.list_display功能实现 4.list_display_links 功 ...

  6. python 全栈开发,Day107(CRM初始,权限组件之权限控制,权限系统表设计)

    一.CRM初始 CRM,客户关系管理系统(Customer Relationship Management).企业用CRM技术来管理与客户之间的关系,以求提升企业成功的管理方式,其目的是协助企业管理销 ...

  7. 分享一个全开源的ASP.NET快速开发平台,能快速开发OA CRM ERP 等系统

    bingo炸了 2017/3/30 16:28:14 阅读(870) 评论(0) 公司业务量比较大,接了很多项目,为了缩短开发周期老板让我牵头搭建了一个快速开发平台. 我们主要的业务是做OA.CRM. ...

  8. 图解CRM(客户关系管理)全流程

    https://blog.csdn.net/lylmwt/article/details/84921432

  9. 盘点国内11家已经获得融资的移动CRM平台

    盘点国内11家已经获得融资的移动CRM平台 亿欧网盘点了目前国内已经获得融资的11家移动CRM平台,它们分别是:纷享销客.红圈营销.小满科技.腾腾科技.麦客.美洽.销售易.快消总管.EC营客通.店小三 ...

  10. 某CRM项目招投标工作的感悟

    最近参与了某公司的CRM项目招标工作, 由于此项目涉及到的二级单位比较多,以及项目金额比较大,所以此招标工作从准备到宣布中标一直持续了大概3个月时间,中间过程发生了一些颇有意思的事情,因为保密的原因无 ...

随机推荐

  1. Centos 7 下安装 Jenkins

    Jenkins介绍 Jenkins是一个开源的支持自动化构建.部署等任务的平台.基本上可以说是持续集成(CI).持续发布(CD)不可或缺的工具. 安装Java环境 CentOS 7 安装 JAVA环境 ...

  2. vue 客户端渲染和服务端渲染

    参考链接 https://www.cnblogs.com/tiedaweishao/p/6644267.html

  3. Mybatis中返回Map

    在Mybatis中,我们通常会像下边这样用: 返回一个结果 User selectOne(User user); <select id="selectOne" paramet ...

  4. 资深架构师教你String 常量池、 String.itern()

    什么是常量 用final修饰的成员变量表示常量,值一旦给定就无法改变! final修饰的变量有三种:静态变量.实例变量和局部变量,分别表示三种类型的常量. Class文件中的常量池 在Class文件结 ...

  5. for循环使用element的折叠面板遇到的问题-2

    需求:每次添加一个折叠面板时,让最新的折叠面板展开,其余的关闭 动态控制展开折叠面板,首先绑定name,v-model = activeName 我们的项目中是当添加折叠面板时,直接push进这个数组 ...

  6. c语言内存

    冯诺依曼结构是:数据和代码放在一起. 哈佛结构是:数据和代码分开存在.内存管理fiLO 先进后出 栈FIFO 先进先出 队列栈的特点是入口即出口,另一个口是堵死的,所以先进去的后出来队列的特点是入口和 ...

  7. angularjs用回车键动态添加数据,同时渲染到页面

    <script src="../../angular-1.5.5/angular.min.js"></script> <script> var ...

  8. Docker-核心笔记(含Dockerfile,Compose)

    Docker-核心笔记(含Dockerfile,Compose) 2017/03 Chenxin 参考 https://yeasy.gitbooks.io/docker_practice Docker ...

  9. JupyterLab安装与配置虚拟环境

    JupyterLab安装: 推荐使用miniconda,相比于anaconda更加简洁,下载连接:https://mirrors.tuna.tsinghua.edu.cn/anaconda/minic ...

  10. 10g+: Transportable Tablespaces Across Different Platforms (Doc ID 243304.1)

    10g+: Transportable Tablespaces Across Different Platforms (Doc ID 243304.1) APPLIES TO: Oracle Data ...