修改Django decorator函数,需要权限

2024-04-26 21:14:11 发布

您现在位置:Python中文网/ 问答频道 /正文

默认情况下,decorator @permission_required($SOME_PERMISSION)检查请求用户是否具有请求此视图所需的权限,如果没有,则将其重定向到登录页或任何其他指定页(例如,如果用户未登录,则会重定向到登录页)。
这是我的问题,我想将一个未登录的用户重定向到登录页面,但可能有一个登录的用户没有所需的权限,默认情况下,该用户被重定向到登录页面,而且他已经登录,所以,他再次重定向到他请求的页面,这里会发生一个循环。
所以我想做的是改变这个装饰器的行为(在我的视图函数中编写一个等价的代码,而不是使用@permission_required)来检查用户是否因为没有登录或者他已经登录但没有权限而看不到请求的页面,然后相应地将他重定向到正确的页面。 如有任何帮助,我们将不胜感激:)
提前谢谢


Tags: 函数代码用户视图权限required情况装饰