在我的禁止视图中,如果所有成员访问访客页面,我想将他们重定向到他们的仪表板,如果他们访问成员页面,我想将所有访客重定向到登录页面。这很容易。
但是,在某些情况下,我需要抛出一个 HTTPForbidden 错误,这不是权限失败的原因,而是简单地向用户显示原因。如何确定 HTTPForbidden 是权限失败还是其他原因造成的?我想我可以用pyramid.security.has_permission
(还没有尝试过)做一些奇怪的事情,但必须有一个更简单的方法。
2011 年的一个老问题,据说这是在待办事项列表中如何检查金字塔(塔 2)中授权失败的权限?