检查用户是否具有django中特定代号的权限

时间:2017-11-09 16:32:02

标签: django django-permissions

我正在尝试检查用户是否具有我在模型的class Meta中定义的权限,具有特定的代号。目前我有:

if request.user.has_perm('app_label.code_name'):
    do something

我想避免的是使用app_label,但使用has_perm('code_name')似乎无效。

1 个答案:

答案 0 :(得分:0)

这个函数的工作方式是你需要传递app_label,所以你不能做那么多。

一种解决方法是编写自己的包装函数,例如:

def _has_perm(user, code_name, app_label="app_label"):
    return user.has_perm(app_label + "." + code_name)