包括经过身份验证的网址的路由组。
我需要创建身份验证组并根据权限启用路由。
例如。
urlpatterns = [
@adminGroup
path('admin/', admin.site.urls),
@userGroup, @adminGroup
path('/home', home.site.urls),
]
答案 0 :(得分:0)
我们可以使用staff_member_required
[Django-doc]和login_required
[Django-doc]函数。
为了在一组网址上强制使用修饰符,我们可以使用django-decorator-include
[GitHub]。
您可以通过以下方式安装它:
$ pip3 install django-decorator-include
(可能在您的虚拟环境中)
然后我们可以使用以下方法强制装饰器:
from decorator_include import decorator_include
from django.contrib.auth.decorators import login_required
from django.contrib.admin.views.decorators import staff_member_required
urlpatterns = [
path('admin/', decorator_include(staff_member_required, 'admin.site.urls')),
path('/home', decorator_include(login_required, 'home.site.urls')),
]
对于更复杂的测试,可以使用user_passes_test
[Django-doc]。