【发布时间】:2020-02-26 17:32:43
【问题描述】:
我需要创建超过 1 个管理员用户,他们只能管理他在 django 中创建的用户的角色/权限。这个管理员应该只能看到他创建的用户,而不是其他用户创建的用户。简而言之,我希望将 django 用作我的客户的 SaaS 模型,他只能在其中管理他的员工/用户。这是否可能以及如何实现?例如。管理员 A 可以为其公司 A 创建用户并为其设置角色,管理员 B 可以为其公司 B 创建用户并设置其角色。但同时管理员 A 不应该看到管理员 B 创建的用户,反之亦然。
【问题讨论】:
-
是的,有可能。不过,您不会想要为此使用 Django 管理面板。您应该为这些用户编写自定义“管理”区域。
-
@SamCreamer 您能否大致说明如何为此目的定义用户类?
-
这里只是一个建议,也许你应该把这个问题想得更笼统,比如多租户。然后每个公司可以有多个管理员,但他们只能访问他们公司的用户。在这种情况下,将 User 模型链接到 Company 模型,然后在管理页面中根据管理员的公司过滤掉用户。
-
@GabrielMuj 就是这样,但是 1 家公司的管理员在登录管理面板时应该看不到另一家公司的用户
标签: django python-3.x