Django-RBCA权限管理实现笔记(一)
概念解释:
RBCA:全称基于角色的权限管理,个人理解:每个用户会有多种角色,每个角色会有多种权限,我们需要实现每个用户的权限控制,那么就要通过角色,来进行关联。
每个权限对应的其实就是一个url,控制权限就是控制用户是否可以对这个url是否能够操作,再具体就是对这个url如何操作(增删改查)。
权限模型设计 models.py
一共七张表,可以实现对每个用户的操作URL的增删改查的具体控制;
from django.db import models
# 用户表
class User(models.Model):
username = models.CharField(max_length=32)
password = models.CharField(max_length=64)
class Meta:
verbose_name_plural = "用户表"
def __str__(self):
return self.username
# 角色表
class Role(models.Model):
caption = models.CharField(max_length=32)
class Meta:
verbose_name_plural = "角色表"
def __str__(self):
return self.caption
# 用户角色关系表
class User2Role(models.Model):