diff options
Diffstat (limited to 'rest_framework/request.py')
| -rw-r--r-- | rest_framework/request.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/rest_framework/request.py b/rest_framework/request.py index 2034ccc6..e254cf8e 100644 --- a/rest_framework/request.py +++ b/rest_framework/request.py @@ -28,6 +28,22 @@ def _hasattr(obj, name): return not getattr(obj, name) is Empty +def clone_request(request, method): + """ + Internal helper method to clone a request, replacing with a different + HTTP method. Used for checking permissions against other methods. + """ + ret = Request(request._request, + request.parser_classes, + request.authentication_classes) + ret._data = request._data + ret._files = request._files + ret._content_type = request._content_type + ret._stream = request._stream + ret._method = method + return ret + + class Request(object): """ Wrapper allowing to enhance a standard `HttpRequest` instance. |
