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

为什么Django在尝试访问受权限保护的页面时会将用户重定向到登录页面?筹集403会不会更有意义?然后,我可以在403.html(使用自定义中间件)中向用户显示有意义的消息,表示他们没有执行操作的权限.此外,我将能够识别用户甚至不应该在第一时间呈现的视图的链接或尝试访问禁用资源的用户. 最佳答案 如果您正在谈论login_required装饰器,那么您没有必要使用它.您可以编写一个类似的装饰器来完成您正在寻找的东西(返回403响应).

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

点赞