diff --git a/rest_framework/generics.py b/rest_framework/generics.py index 88438e8c4..1bd7d2357 100644 --- a/rest_framework/generics.py +++ b/rest_framework/generics.py @@ -73,7 +73,7 @@ class GenericAPIView(views.APIView): queryset = queryset.all() return queryset - def get_object(self): + def get_object(self, queryset=None): """ Returns the object the view is displaying. @@ -81,7 +81,10 @@ class GenericAPIView(views.APIView): queryset lookups. Eg if objects are referenced using multiple keyword arguments in the url conf. """ - queryset = self.filter_queryset(self.get_queryset()) + if queryset is not None: + queryset = self.filter_queryset(queryset) + else: + queryset = self.filter_queryset(self.get_queryset()) # Perform the lookup filtering. lookup_url_kwarg = self.lookup_url_kwarg or self.lookup_field