【发布时间】:2022-07-02 18:06:25
【问题描述】:
我创建了两个组 group1 和 group2 并相应地分配了用户。我发现我可以使用
{% if perms.app1 %} // app1 is a app in project
///show something
{% endif %}
在上面的代码中,我只是检查用户是否有任何与应用程序相关的权限,如果为真则显示,如果为假则隐藏。我相信这就是它的工作原理。
现在,如何在视图上实现这一点?如何只给出应用名称并检查用户是否有权访问 view.py 中的视图功能?我认为添加权限列表不是一个好习惯,有没有办法只给应用程序名称来检查权限?
而且我已经有了一个角色检查装饰器:
def is_agent(login_url=None):
actual_decorator = user_passes_test(lambda u: u.role == 1)
if actual_decorator:
return actual_decorator
else:
raise Http404
那么我可以向装饰器添加东西或如何处理它吗?
【问题讨论】:
标签: python django django-views