01-crm介绍

02-权限系统介绍

03-第一版表结构设计

04-第二版表结构设计

05-orm中创建表结构

06-销售管理系统业务

07-销售管理系统权限信息录入

08-快速实现简单的权限控制的设计思路

09-快速实现简单权限之初始化用户权限

10-快速实现权限控制之权限校验

01-crm介绍

1、CRM系统初识;

2、CRM三大模块初识(权限、stark组、CRM);

02-权限系统介绍

1、权限开发的重要性;

2、什么是权限?URL==权限;

3、人和URL的关系;

4、表结构的版本迭代;

03-第一版表结构设计

1、权限表;

2、用户表;

04-第二版表结构设计

1、基于角色的权限控制RBAC;

05-orm中创建表结构

1、大目标-CRM系统;

  • 权限
  • Startk组件
  • CRM业务

操作步骤:

1、创建Django project,luffy_permission

2、创建两个app应用;rbac(基于角色的权限组件控制)、web(销售管理系统);

3、rbac应用中,将权限相关的表编写到此models.py中;

from django.db import models

# Create your models here.
class Permission(models.Model):
"""
权限表;
"""
title = models.CharField(verbose_name='标题', max_length=32)
url = models.CharField(verbose_name='含正则的URL', max_length=128) def __str__(self):
return self.title class Role(models.Model):
"""
角色表;
"""
title = models.CharField(verbose_name='角色名称', max_length=32)
permissions = models.ManyToManyField(verbose_name='拥有所有的权限', to='Permission', blank=True) def __str__(self):
return self.title class UserInfo(models.Model):
"""
用户表;
"""
name = models.CharField(verbose_name='用户名', max_length=32)
password = models.CharField(verbose_name='密码', max_length=64)
email = models.CharField(verbose_name='邮箱', max_length=32)
roles = models.ManyToManyField(verbose_name='拥有所有的角色', to='Role', blank=True) def __str__(self):
return self.name

4、web应用中,将销售管理系统表写到此app的models.py中;

5、将5张表-权限、角色、权限角色关系表、用户、用户角色关系表进行创建;

06-销售管理系统业务

1、博文参考;https://www.cnblogs.com/wupeiqi/articles/9178982.html

2、页面展示;

07-销售管理系统权限信息录入

1、两个app的整合;

销售管理系统中的URL:

2、权限和角色信息的分配;

08-快速实现简单的权限控制的设计思路

1、快速完成一个基本的权限控制;

2、数据库进行多表查询,效率非常低;

09-快速实现简单权限之初始化用户权限

10-快速实现权限控制之权限校验

第七模块:项目实战一 第1章 项目实战:CRM客户关系管理系统开发的更多相关文章

  1. 项目实战:CRM客户关系管理系统开发

    21-CRM第一节内容概要 21.1 Stark组件介绍:实现基本的增删改查+自定义复杂操作: 21.2 单例模式:最简单的单例模式: 21.3 路由系统(分发): 21.4 制作启动文件-Djang ...

  2. Django项目:CRM(客户关系管理系统)--70--60PerfectCRM实现CRM学生上课记录

    #urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...

  3. Django项目:CRM(客户关系管理系统)--58--48PerfectCRM实现CRM客户报名流程学生合同

    # sales_urls.py # ————————47PerfectCRM实现CRM客户报名流程———————— from django.conf.urls import url from bpm. ...

  4. Django项目:CRM(客户关系管理系统)--84--74PerfectCRM实现CRM权限和权限组限制访问URL

    #models.py # ————————01PerfectCRM基本配置ADMIN———————— from django.db import models # Create your models ...

  5. Django项目:CRM(客户关系管理系统)--85--75PerfectCRM实现CRM扩展权限

    # sales_urls.py # ————————47PerfectCRM实现CRM客户报名流程———————— from django.conf.urls import url from bpm. ...

  6. Django项目:CRM(客户关系管理系统)--82--72PerfectCRM实现CRM动态菜单和角色

    #models.py # ————————01PerfectCRM基本配置ADMIN———————— from django.db import models # Create your models ...

  7. Django项目:CRM(客户关系管理系统)--81--71PerfectCRM实现CRM项目首页

    {#portal.html#} {## ————————46PerfectCRM实现登陆后页面才能访问————————#} {#{% extends 'king_admin/table_index.h ...

  8. Django项目:CRM(客户关系管理系统)--78--68PerfectCRM实现CRM业务流程(bpm)报名缴费分页

    # pagination.py # ————————68PerfectCRM实现CRM业务流程(bpm)报名缴费分页———————— from django.utils.safestring impo ...

  9. Django项目:CRM(客户关系管理系统)--62--52PerfectCRM实现CRM客户报名流程学生合同审核

    # sales_urls.py # ————————47PerfectCRM实现CRM客户报名流程———————— from django.conf.urls import url from bpm. ...

随机推荐

  1. 关于 Vue.js+Element-UI 日期控件 日期范围选择

    理想效果 : 也就是说前面时间框的时间能选的范围应该小于等于后面的时间框; 后面时间框能选的范围应该大于等于前面的时间框; 示例代码 : 页面: <el-form-item label=&quo ...

  2. spring使用 hibernate jpa JpaRepository

    使用JpaRepository需要两个架包: <dependency> <groupId>org.springframework.data</groupId> &l ...

  3. TCP-IP and Advanced Topics 课程总结与报告

    课程总结 学习了四周十六课的课程,对每一课的知识点进行总结梳理,作出一个树状的知识网络图. 本课程虽然在深度上有所欠缺,但却更有利于结构上的梳理,加深总体上对网络的理解. 本课程从Internet出发 ...

  4. Zabbix——部署(DB与web分离)

    前提条件: 两台centos7设备 两台设备可以相互访问 Zabbix-Servser版本为4.0 mysql版本为8.0 关闭防火墙 Zabbix部署(包含server,web,agent) rpm ...

  5. pastedeploy

    3.1作用 不修改WSGI应用程序的情况下通过配置文件配置WSGI服务. filter:过滤器,滤网. pipline:管道 app:application 应用,在这个语境下我举个例子吧,lavab ...

  6. shell习题第2题:统计ip访问量

    [题目要求] 有日志1.log,部分内容如下: 112.111.12.248 – [25/Sep/2013:16:08:31 +0800]formula-x.haotui.com “/seccode. ...

  7. Linux 学习第三天

    一.常用命令 1.diff A.diff -q 源文件 目标文件  (快速比较文件是否相同) 2.ifconfig.nmcli (查看配置信息) 命令输入注意: Windows 查看网卡配置信息输入命 ...

  8. html5 video获取当前时间和视频总时间长度

    html: <video id="video-active" class="video-active" width="640" hei ...

  9. day31 进程和其他方法,锁,队列

    1.进程的其他方法: 首先引入模块: import os from multiprocessing import Process p = Process(target=f,) 进程的id:  p.pi ...

  10. python学习——面向对象的三大特性

    一.继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类. 1.python中类的继承分为:单继承和多继承 class P ...