![](/img/trans.png)
[英]How to get the original name of a function after it is wrapped by function decorator?
[英]Decorator: How to get original function variables
给定以下视图功能:
@validate_credentials
def validate_user(request):
return HttpResponse('OK')
我如何在包装器中获取request.GET值?
def validate_credentials(view_function):
def wrapped_view(*args, **kwargs):
# request = ?
return view_function(*args, **kwargs)
return wrapped_view
取决于该函数是称为validate_user(req)
还是validate_user(request=req)
,它将分别位于args
或kwargs
。 在以下两种情况下,以下行将确保将参数(或None
)分配给request
:
request = kwargs.get('request', args[0] if args else None)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.