У меня довольно простой вид, где, если фильтры не выбраны, я хочу, чтобы вызов api ничего не возвращал. В настоящее время базовый api url возвращает все, и фильтры успешно ограничивают возврат, который на полпути к тому, что я хочу.Django Rest Framework - не возвращать значения, если фильтр не выбран
так что это будет возвращать значения:
http://localhost:8000/api/v1/widgets/?name=abc&list=def
это возвращающие бы не результаты:
http://localhost:8000/api/v1/widgets/
Вот мой текущий вид:
class WidgetViewSet(EncryptedLookupGenericViewSet,
viewsets.ModelViewSet,
):
queryset = Widget.objects.all()
serializer_class = WidgetSerializer
permission_classes=[IsAuthenticated, ]
lookup_field = 'id'
filter_class = WidgetFilter
def get_queryset(self):
return super(WidgetViewSet, self).get_queryset().filter(list__owner=self.request.user)
Работы как шарм спасибо! – whoisearth