Django PermissionRequiredMixin - return 404 错误而不是 403
Django PermissionRequiredMixin - return 404 error instead of 403
在基于 class 的视图中使用 PermissionRequiredMixin 时,我正在尝试 return 404 而不是 403,我不希望用户看到 403,因为这意味着url 存在
class SomeobjectCreateView(PermissionRequiredMixin, CreateView):
model = Someobject
success_url = reverse_lazy('some_url')
fields = ['field1', 'field2', ...]
template_name = 'someobjects/someobject_new.html'
permission_required = 'someobjects.permission'
有什么想法吗?
一种方法是自定义 403 模板
project/urls.py
handler403 = 'your_app.views.handler403'
现在您可以在 403 视图中呈现 404 模板。
def handler403 (request, *args, **kwargs):
return render(request, '404.html')
在基于 class 的视图中使用 PermissionRequiredMixin 时,我正在尝试 return 404 而不是 403,我不希望用户看到 403,因为这意味着url 存在
class SomeobjectCreateView(PermissionRequiredMixin, CreateView):
model = Someobject
success_url = reverse_lazy('some_url')
fields = ['field1', 'field2', ...]
template_name = 'someobjects/someobject_new.html'
permission_required = 'someobjects.permission'
有什么想法吗?
一种方法是自定义 403 模板
project/urls.py
handler403 = 'your_app.views.handler403'
现在您可以在 403 视图中呈现 404 模板。
def handler403 (request, *args, **kwargs):
return render(request, '404.html')