This commit is contained in:
David Henderson 2012-12-14 02:01:50 -08:00
commit 2d499442b9
3 changed files with 5 additions and 3 deletions

View File

@ -75,12 +75,13 @@ class Request(object):
_CONTENTTYPE_PARAM = api_settings.FORM_CONTENTTYPE_OVERRIDE _CONTENTTYPE_PARAM = api_settings.FORM_CONTENTTYPE_OVERRIDE
def __init__(self, request, parsers=None, authenticators=None, def __init__(self, request, parsers=None, authenticators=None,
negotiator=None, parser_context=None): negotiator=None, parser_context=None, kargs = {}):
self._request = request self._request = request
self.parsers = parsers or () self.parsers = parsers or ()
self.authenticators = authenticators or () self.authenticators = authenticators or ()
self.negotiator = negotiator or self._default_negotiator() self.negotiator = negotiator or self._default_negotiator()
self.parser_context = parser_context self.parser_context = parser_context
self.kwargs = kargs
self._data = Empty self._data = Empty
self._files = Empty self._files = Empty
self._method = Empty self._method = Empty

View File

@ -3,6 +3,7 @@ import datetime
import types import types
from decimal import Decimal from decimal import Decimal
from django.db import models from django.db import models
from django.db.models.query import QuerySet
from django.forms import widgets from django.forms import widgets
from django.utils.datastructures import SortedDict from django.utils.datastructures import SortedDict
from rest_framework.compat import get_concrete_model from rest_framework.compat import get_concrete_model
@ -283,7 +284,7 @@ class BaseSerializer(Field):
""" """
Serialize objects -> primitives. Serialize objects -> primitives.
""" """
if hasattr(obj, '__iter__'): if hasattr(obj, '__iter__') and (isinstance(obj, QuerySet) or not hasattr(obj, '__dict__')):
return [self.convert_object(item) for item in obj] return [self.convert_object(item) for item in obj]
return self.convert_object(obj) return self.convert_object(obj)

View File

@ -275,7 +275,7 @@ class APIView(View):
parsers=self.get_parsers(), parsers=self.get_parsers(),
authenticators=self.get_authenticators(), authenticators=self.get_authenticators(),
negotiator=self.get_content_negotiator(), negotiator=self.get_content_negotiator(),
parser_context=parser_context) parser_context=parser_context, kargs=kargs)
def initial(self, request, *args, **kwargs): def initial(self, request, *args, **kwargs):
""" """