如何获取Django中具有特定权限组的所有用户的列表
问题描述:
我想获得一个具有特定权限组的所有Django auth用户的列表,如下所示:
I want to get a list of all Django auth user with a specific permission group, something like this:
user_dict = {
'queryset': User.objects.filter(permisson='blogger')
}
我找不到如何做到这一点。权限组如何保存在用户模型中?
I cannot find out how to do this. How are the permissions groups saved in the user model?
答
如果要通过权限获取用户列表,请查看变量:
If you want to get list of users by permission, look at this variant:
from django.contrib.auth.models import User, Permission
from django.db.models import Q
perm = Permission.objects.get(codename='blogger')
users = User.objects.filter(Q(groups__permissions=perm) | Q(user_permissions=perm)).distinct()