模板内的 Django 用户权限
Django user permission inside template
我通过管理站点在 Django 中创建了一个自定义授权权限,我将该权限添加到一个用户(而不是一个组),现在我想询问模板中的请求用户是否拥有它,但什么都没有 works.It 不是重复的,我已经检查过类似的问题和这项工作的 none:
{% if perms.auth.add_something %}
{% if 'auth.add_something' in request.user.get_all_permissions %}
{% if request.user.has_perm('add_something') %}
我补充一下我的看法:
class NotificationSelectView(View):
template = 'myapp/notification_read.html'
def get(self, request, *args, **kwargs):
t = tree(request)
req_var_list = []
analist = notifications_list(request.user)
level = LevelProcess.objects.get(
level_hierarchical = 3
)
subprocess= Process.objects.filter(level = level)
user = request.user
t.update({
'subprocess': subprocess,
'analist':analist,
})
return render(request, self.template, t)
想法是将其放在模板中,而不是在视图中使用更多代码。
有什么想法吗?,提前致谢。
django 在模板中使用变量 perms 作为登录用户的权限,因此您可以在模板内部使用
{% if perms.auth.add_something %}
{{do_smth}}
{% endif %}
django 文档中有一节 Authentication data in templates 也描述了模板中的权限
我通过管理站点在 Django 中创建了一个自定义授权权限,我将该权限添加到一个用户(而不是一个组),现在我想询问模板中的请求用户是否拥有它,但什么都没有 works.It 不是重复的,我已经检查过类似的问题和这项工作的 none:
{% if perms.auth.add_something %}
{% if 'auth.add_something' in request.user.get_all_permissions %}
{% if request.user.has_perm('add_something') %}
我补充一下我的看法:
class NotificationSelectView(View):
template = 'myapp/notification_read.html'
def get(self, request, *args, **kwargs):
t = tree(request)
req_var_list = []
analist = notifications_list(request.user)
level = LevelProcess.objects.get(
level_hierarchical = 3
)
subprocess= Process.objects.filter(level = level)
user = request.user
t.update({
'subprocess': subprocess,
'analist':analist,
})
return render(request, self.template, t)
想法是将其放在模板中,而不是在视图中使用更多代码。 有什么想法吗?,提前致谢。
django 在模板中使用变量 perms 作为登录用户的权限,因此您可以在模板内部使用
{% if perms.auth.add_something %}
{{do_smth}}
{% endif %}
django 文档中有一节 Authentication data in templates 也描述了模板中的权限