【发布时间】:2021-01-20 00:57:06
【问题描述】:
login_required、user_passes_test 和 permission_required 装饰器仅适用于特定功能,与 mixin 类似。但是,将@permission_required('polls.add_choice') 放在需要此类权限的每个视图中是否是一种好习惯?
我认为多个视图具有相同的权限是很常见的。例如,您有雇主和求职者,只有雇主可以添加公司名称/地址、发布职位和查看职位申请。网站的大部分页面都需要登录也是很常见的。
所以我的问题是,将相同权限分配给多个视图的习惯用法/做法是什么?我能找到的唯一食谱是Beginning Django - Listing 10-8. Permission checks in urls. Pay for include () definitions。另一种方法是交换类中的视图函数(作为静态方法)并做一些技巧来为所有方法添加权限。
有没有更好的解决方案?或者有什么理由不这样做?
【问题讨论】:
-
考虑 djangorestframework
标签: python django permissions