Django 中不同组织的管理员、用户和组
Admins, users and groups in different organizations in Django
我正在创建一个 Django 应用程序,针对将有多个用户的组织。所以在模型中,我有组织和用户,组织应该是独立的。
组织的第一个注册用户是管理员,下一个注册用户是员工。管理员可以创建用户组 (usergroups/roles) 以在应用程序内设置员工的权限。
Django 已经允许这样做,但是 Django 管理员可以编辑所有用户吗?有没有办法让组织的经理只能查看和编辑其员工权限,而看不到数据库中的所有用户?
你可以做的是在 ModelAdmin
上覆盖你的 get_queryset
class ClassAdmin(admin.ModelAdmin):
def get_queryset(self, request):
qs = super(ClassAdmin, self).get_queryset(request)
if your_condition:
return qs.filter(b='bar')
return qs.filter(b='foo')
当您向管理员注册 class 时,请不要忘记执行 admin.site.register(Class, ClassAdmin)
我正在创建一个 Django 应用程序,针对将有多个用户的组织。所以在模型中,我有组织和用户,组织应该是独立的。
组织的第一个注册用户是管理员,下一个注册用户是员工。管理员可以创建用户组 (usergroups/roles) 以在应用程序内设置员工的权限。
Django 已经允许这样做,但是 Django 管理员可以编辑所有用户吗?有没有办法让组织的经理只能查看和编辑其员工权限,而看不到数据库中的所有用户?
你可以做的是在 ModelAdmin
get_queryset
class ClassAdmin(admin.ModelAdmin):
def get_queryset(self, request):
qs = super(ClassAdmin, self).get_queryset(request)
if your_condition:
return qs.filter(b='bar')
return qs.filter(b='foo')
当您向管理员注册 class 时,请不要忘记执行 admin.site.register(Class, ClassAdmin)