From f5470ab9e292c7321377ae1f43f85e311d94975f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20Noss?= Date: Wed, 3 Jul 2019 11:23:35 +0200 Subject: [PATCH] docs: update http method override middleware example (#6776) --- docs/topics/browser-enhancements.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/topics/browser-enhancements.md b/docs/topics/browser-enhancements.md index fa07b6064..67c1c1898 100644 --- a/docs/topics/browser-enhancements.md +++ b/docs/topics/browser-enhancements.md @@ -51,13 +51,15 @@ For example: METHOD_OVERRIDE_HEADER = 'HTTP_X_HTTP_METHOD_OVERRIDE' - class MethodOverrideMiddleware(object): - def process_view(self, request, callback, callback_args, callback_kwargs): - if request.method != 'POST': - return - if METHOD_OVERRIDE_HEADER not in request.META: - return - request.method = request.META[METHOD_OVERRIDE_HEADER] + class MethodOverrideMiddleware: + + def __init__(self, get_response): + self.get_response = get_response + + def __call__(self, request): + if request.method == 'POST' and METHOD_OVERRIDE_HEADER in request.META: + request.method = request.META[METHOD_OVERRIDE_HEADER] + return self.get_response(request) ## URL based accept headers