我正在尝试编写一个定制的decorator,它将执行一些检查,以查看用户是否具有访问页面的权限,但在此之前,需要对用户进行身份验证。我想过使用Django的login_required
decorator,然后执行我的自定义逻辑,但是我似乎找不到任何方法在自己的内部调用login_required
decorator。你知道吗
我知道还有其他选择,比如像这样装饰我的视野:
@login_required
@my_custom_decorator
def my_view(request):
pass
或者在我的装饰器中检查user.is_authenticated()
:
def my_custom_decorator(view_func):
@wraps(view_func)
def wrapper(request, *args, **kwargs):
if not request.user.is_authenticated():
redirect(...)
不过,我想从login_required
中使用Django的逻辑。你知道吗
有没有办法在一个decorator中调用decorator,或者有没有其他方法来实现我的逻辑而不使用两个单独的decorator?你知道吗
您的decorator返回一个函数,例如
在返回函数之前,可以将其包装在
login_required
中:相关问题 更多 >
编程相关推荐