具有通配符模式的 URL 中的 Django 授权检查
Django Authorization Checking in URL having wild card pattern
我正在尝试使用通配符技术在 URL 中为请求实施权限检查机制,而不是对每个视图实施权限检查。
目前我拥有的是
urlpatterns = [
path('admin/', include('admin_urls.py')),
...
]
而我的admin_urls.py
如下
urlpatterns = [
path('', ViewSpaceIndex.as_view(), name="admin_index"),
path('', EmployeeView.as_view(), name="employee"),
...
]
观点如下
@method_decorator(admin_required, name='dispatch')
class EmployeeView(TemplateView):
template_name = 'secret.html'
@method_decorator(admin_required, name='dispatch')
class EmployeeView(TemplateView):
template_name = 'secret.html'
我想要实现的是不在每个视图中使用重复的 @method_decorator(admin_required, name='dispatch')
装饰器我想将权限应用到一个 wild
具有 admin_required
权限的卡 URL '/admin/**' 像 Spring 中那样引导如下。
http.authorizeRequests()
.antMatchers("/admin/**").has_permission("is_admin")
您可以在项目根目录 url 中这样做
from .my_custom_decorators import admin_required
urlpatterns = [
path('admin/', admin_required(include('admin_urls.py'))),
...
]
我不知道这是否有效,但你可以试试
我正在尝试使用通配符技术在 URL 中为请求实施权限检查机制,而不是对每个视图实施权限检查。
目前我拥有的是
urlpatterns = [
path('admin/', include('admin_urls.py')),
...
]
而我的admin_urls.py
如下
urlpatterns = [
path('', ViewSpaceIndex.as_view(), name="admin_index"),
path('', EmployeeView.as_view(), name="employee"),
...
]
观点如下
@method_decorator(admin_required, name='dispatch')
class EmployeeView(TemplateView):
template_name = 'secret.html'
@method_decorator(admin_required, name='dispatch')
class EmployeeView(TemplateView):
template_name = 'secret.html'
我想要实现的是不在每个视图中使用重复的 @method_decorator(admin_required, name='dispatch')
装饰器我想将权限应用到一个 wild
具有 admin_required
权限的卡 URL '/admin/**' 像 Spring 中那样引导如下。
http.authorizeRequests()
.antMatchers("/admin/**").has_permission("is_admin")
您可以在项目根目录 url 中这样做
from .my_custom_decorators import admin_required
urlpatterns = [
path('admin/', admin_required(include('admin_urls.py'))),
...
]
我不知道这是否有效,但你可以试试