aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework
diff options
context:
space:
mode:
authorTom Christie2013-04-13 20:07:36 +0100
committerTom Christie2013-04-13 20:07:36 +0100
commit5a5a602f8ad2e84b36aa88d86334c5afecc40295 (patch)
treeb311bcd14deb95f8a0246c552900b98d0a0d886e /rest_framework
parent3f91379e4eaf07418a99fda1932af91511c55e7b (diff)
downloaddjango-rest-framework-5a5a602f8ad2e84b36aa88d86334c5afecc40295.tar.bz2
Allow overriding get_object to work correctly. Fixes #784
Diffstat (limited to 'rest_framework')
-rw-r--r--rest_framework/generics.py1
-rw-r--r--rest_framework/mixins.py4
2 files changed, 2 insertions, 3 deletions
diff --git a/rest_framework/generics.py b/rest_framework/generics.py
index 36ecf915..f9133c73 100644
--- a/rest_framework/generics.py
+++ b/rest_framework/generics.py
@@ -130,6 +130,7 @@ class SingleObjectAPIView(SingleObjectMixin, GenericAPIView):
"""
Override default to add support for object-level permissions.
"""
+ queryset = self.filter_queryset(self.get_queryset())
obj = super(SingleObjectAPIView, self).get_object(queryset)
self.check_object_permissions(self.request, obj)
return obj
diff --git a/rest_framework/mixins.py b/rest_framework/mixins.py
index 7d9a6e65..3bd7d6df 100644
--- a/rest_framework/mixins.py
+++ b/rest_framework/mixins.py
@@ -97,9 +97,7 @@ class RetrieveModelMixin(object):
Should be mixed in with `SingleObjectAPIView`.
"""
def retrieve(self, request, *args, **kwargs):
- queryset = self.get_queryset()
- filtered_queryset = self.filter_queryset(queryset)
- self.object = self.get_object(filtered_queryset)
+ self.object = self.get_object()
serializer = self.get_serializer(self.object)
return Response(serializer.data)