美文网首页
django神奇装饰器

django神奇装饰器

作者: 麒麟楚庄王 | 来源:发表于2018-09-29 11:47 被阅读0次

django神奇装饰器

def require_http_methods(request_method_list):

"""

Decorator to make a view only accept particular request methods.  Usage::

@require_http_methods(["GET", "POST"])

def my_view(request):

# I can assume now that only GET or POST requests make it this far

# ...

Note that request methods should be in uppercase.

"""

    def decorator(func):

@wraps(func)

def inner(request, *args, **kwargs):

if request.methodnot in request_method_list:

response = HttpResponseNotAllowed(request_method_list)

log_response(

'Method Not Allowed (%s): %s', request.method, request.path,

                    response=response,

                    request=request,

                )

return response

return func(request, *args, **kwargs)

return inner

return decorator

相关文章

网友评论

      本文标题:django神奇装饰器

      本文链接:https://www.haomeiwen.com/subject/ozmvoftx.html