mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-02-02 20:54:42 +03:00
Allow overriding get_object to work correctly. Fixes #784
This commit is contained in:
parent
3f91379e4e
commit
5a5a602f8a
|
@ -130,6 +130,7 @@ class SingleObjectAPIView(SingleObjectMixin, GenericAPIView):
|
||||||
"""
|
"""
|
||||||
Override default to add support for object-level permissions.
|
Override default to add support for object-level permissions.
|
||||||
"""
|
"""
|
||||||
|
queryset = self.filter_queryset(self.get_queryset())
|
||||||
obj = super(SingleObjectAPIView, self).get_object(queryset)
|
obj = super(SingleObjectAPIView, self).get_object(queryset)
|
||||||
self.check_object_permissions(self.request, obj)
|
self.check_object_permissions(self.request, obj)
|
||||||
return obj
|
return obj
|
||||||
|
|
|
@ -97,9 +97,7 @@ class RetrieveModelMixin(object):
|
||||||
Should be mixed in with `SingleObjectAPIView`.
|
Should be mixed in with `SingleObjectAPIView`.
|
||||||
"""
|
"""
|
||||||
def retrieve(self, request, *args, **kwargs):
|
def retrieve(self, request, *args, **kwargs):
|
||||||
queryset = self.get_queryset()
|
self.object = self.get_object()
|
||||||
filtered_queryset = self.filter_queryset(queryset)
|
|
||||||
self.object = self.get_object(filtered_queryset)
|
|
||||||
serializer = self.get_serializer(self.object)
|
serializer = self.get_serializer(self.object)
|
||||||
return Response(serializer.data)
|
return Response(serializer.data)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user