Django - 重定向到登录页面与403

时间:2010-12-03 21:31:00

标签: django login

为什么Django在尝试访问受权限保护的页面时会将用户重定向到登录页面?筹集403会不会更有意义?然后,我可以在403.html(使用自定义中间件)中向用户显示有意义的消息,表示他们没有执行操作的权限。此外,我还能够识别用户甚至不应该在第一时间呈现的视图链接或尝试访问禁用资源的用户。

2 个答案:

答案 0 :(得分:2)

如果您正在谈论login_required装饰器,那么您 没有理由使用它。您可以编写一个类似的装饰器来完成您正在寻找的东西(返回403响应)。

不幸的是,login_required decorator code实际上有些复杂,因此根据您的需要复制/修改并不是一件容易的事,因为重定向部分实际上在他们使用的user_passes_test函数内。 / p>

答案 1 :(得分:0)

对于将来的Google员工,permission_required装饰器接受可选的raise_exception关键字参数,如果用户没有适当的权限,该参数将触发403。