Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django auth.group自定义权限_Python_Django_Authentication - Fatal编程技术网

Python Django auth.group自定义权限

Python Django auth.group自定义权限,python,django,authentication,Python,Django,Authentication,我正在创建一个具有如下权限的自定义组 user_right = request.user.has_perm('can_Delete') print(user_right) //创建新组 new_group, created = Group.objects.get_or_create(name='AdminGroup') ct = ContentType.objects.get_for_model(User) p3 = Permission.objects.create( codena

我正在创建一个具有如下权限的自定义组

user_right = request.user.has_perm('can_Delete')
print(user_right)
//创建新组

new_group, created = Group.objects.get_or_create(name='AdminGroup')
ct = ContentType.objects.get_for_model(User)
p3 = Permission.objects.create(
    codename='DELETE', name='can_Delete', content_type=ct)
new_group.permissions.add(p3)
//向新组添加权限

new_group, created = Group.objects.get_or_create(name='AdminGroup')
ct = ContentType.objects.get_for_model(User)
p3 = Permission.objects.create(
    codename='DELETE', name='can_Delete', content_type=ct)
new_group.permissions.add(p3)
现在我想检查用户是否有这样的权限

user_right = request.user.has_perm('can_Delete')
print(user_right)
这张照片的结果是假的。怎么做

当然,我像这样向用户添加了这个组

g = Group.objects.get(name='AdminGroup')
request.user.groups.add(g)
还有一件事, 我已在“管理”面板组中对此进行了检查,该组已成功分配权限

谁能给我解释一下吗
这是怎么回事???

我认为您需要在访问权限之前添加用户表(它是models.py或directly auth_User表中的类)。如果您使用了auth_用户表,请确保在setting.py中添加了身份验证后端

user\u right=request.user.has\u perm('user.can\u Delete')


让我知道它是否工作。

尝试使用request.user.has\u perm('App\u name.can\u Delete')我已添加此“身份验证\u BACKENDS=”('django.contrib.auth.BACKENDS.modelbend'))“如果我打印权限,它会正常工作并打印所有给定的权限。我认为问题在于has_perm是否有其他方法可以这样做?您使用过allauth吗?”?