Стог сена - у объекта 'SearchQuerySet' нет атрибута 'модель'

Я пытаюсь сериализовать результат стога сена,

api.py

class PinSearchViewSet(viewsets.ReadOnlyModelViewSet):
    http_method_names = ['get']
    queryset = Pin.objects.all()
    serializer_class = PinSearchSerializer

    def get_queryset(self, *args, **kwargs):
        request = self.request
        queryset = EmptySearchQuerySet()
        if request.GET.get('q') is not None:
            query = request.GET.get('q')
            queryset = SearchQuerySet().filter(content=query)
        return queryset

serializer.py

class PinSearchSerializer(serializers.ModelSerializer):
    class Meta:
        model = Pin
        fields = ('id', 'office_name', 'pin_code', 'office_type', 'delivery_status',
                  'division_name', 'region_name', 'circle_name', 'taluk', 'district', 'state')

но я получил следующую ошибку,

Объект 'SearchQuerySet' не имеет атрибута 'модель'

1 ответ

Сериализатор ожидает объекты булавки, но вы возвращаете объекты SearchResut

Попробуй это

class PinSearchViewSet(viewsets.ReadOnlyModelViewSet):
    http_method_names = ['get']
    queryset = Pin.objects.all()
    serializer_class = PinSearchSerializer

    def get_queryset(self, *args, **kwargs):
        request = self.request
        queryset = EmptySearchQuerySet()
        if request.GET.get('q') is not None:
            query = request.GET.get('q')
            queryset = SearchQuerySet().filter(content=query).models(Pin)
        return [i.object for i in queryset]

Я также указал модель булавки в searchQuerySet

Другие вопросы по тегам