【发布时间】:2020-05-19 15:14:33
【问题描述】:
我有一个具有不同用户角色的 django 应用程序。根据角色不同的内容可用:
class User(AbstractUser):
is_appadmin = models.BooleanField(default=False)
is_appuser = models.BooleanField(default=False)
is_someuser = models.BooleanField(default=False)
应使用相同的角色进行管理。尤其是应该有可能每个 D 值有一个“管理员”(A)来创建/编辑/删除用户配置文件,但没有超级用户权限,也没有显示 D 的其他值的用户。
我尝试使用 django-admin 界面来实现这一点。一旦允许创建用户,这些本地管理员就可以为自己分配“is_superuser”。
实现这一目标的最简单方法是什么?
角色A:
- 创建、更改和删除具有相同 D 值的 B 的用户
- 将用户 C 添加到 D 的同一组 (m:n)
- 创建新用户 C
- 访问管理界面
角色 B + C:
- 更改自己的用户配置文件
- 不一定能访问管理界面
角色 C:
- 可能属于不同的D
D:
- m:n 关系表用于过滤显示的数据
【问题讨论】:
标签: django authentication django-admin authorization