aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--djangorestframework/mixins.py2
-rw-r--r--djangorestframework/request.py10
2 files changed, 7 insertions, 5 deletions
diff --git a/djangorestframework/mixins.py b/djangorestframework/mixins.py
index 4b833aac..6ab7ab6e 100644
--- a/djangorestframework/mixins.py
+++ b/djangorestframework/mixins.py
@@ -94,4 +94,4 @@ class MetadataMixin(object):
# for name, field in form.fields.iteritems():
# field_name_types[name] = field.__class__.__name__
# content['fields'] = field_name_types
- raise Response(content, status=status.HTTP_200_OK)
+ return Response(content, status=status.HTTP_200_OK)
diff --git a/djangorestframework/request.py b/djangorestframework/request.py
index 5bf7b23c..83ee47c6 100644
--- a/djangorestframework/request.py
+++ b/djangorestframework/request.py
@@ -211,16 +211,18 @@ class Request(object):
# Method overloading - change the method and remove the param from the content.
if (self._METHOD_PARAM and
self._METHOD_PARAM in self._data):
- # NOTE: `pop` on a `QueryDict` returns a list of values.
- self._method = self._data.pop(self._METHOD_PARAM)[0].upper()
+ self._method = self._data[self._METHOD_PARAM].upper()
+ self._data.pop(self._METHOD_PARAM)
# Content overloading - modify the content type, and re-parse.
if (self._CONTENT_PARAM and
self._CONTENTTYPE_PARAM and
self._CONTENT_PARAM in self._data and
self._CONTENTTYPE_PARAM in self._data):
- self._content_type = self._data.pop(self._CONTENTTYPE_PARAM)[0]
- self._stream = StringIO(self._data.pop(self._CONTENT_PARAM)[0])
+ self._content_type = self._data[self._CONTENTTYPE_PARAM]
+ self._stream = StringIO(self._data[self._CONTENT_PARAM])
+ self._data.pop(self._CONTENTTYPE_PARAM)
+ self._data.pop(self._CONTENT_PARAM)
self._data, self._files = self._parse()
def _parse(self):