Django框架之RBAC+ContentType
RBAC(基于角色的权限访问控制), 在django框架中已经帮我们实现好了。
一、基于角色的权限访问控制的六张表
二、content_type表
# 给Django中的所有模块中的所有表进行编号存储到content_type表中
# 应用一:权限表的权限是操作表的,所有在权限表中有一个content_type表的外键,标识该权限具体操作的是哪张表
# 应用二:价格策略
"""
Course:
name、type、days、price、vip_type
基础 免费课 7 0
中级 学位课 180 69
究极 会员课 360 至尊会员
Course:
name、type、days、content_type_id
基础 免费课 7 null
中级 学位课 180 1
究极 会员课 360 2
app01_course_1
id、price
app01_course_2
id vip_type
content_type表(Django提供)
id、app_label、model
1 app01 course_1
2 app01 course_2
"""
content_type表作用: 作为两张表之间的关联第三张表,标识该权限具体操作的是哪张表
- 应用一:权限表的权限是操作表的,所有在权限表中有一个content_type表的外键,标识改权限具有操作哪一张表的权限
- 应用二:价格策略
- 缺点:增加了查询效率