Как вернуть объект списка в Generics - PullRequest
0 голосов
/ 02 ноября 2019

Я начинающий с DRF. Я хочу вернуть отсортированный набор запросов, поэтому я делаю это и имею некоторые проблемы с возвратом списка объектов. Вот мой код:

class ProductListView(generics.ListCreateAPIView):
    queryset = Product.objects.all()
    serializer_class = ProductListSerializer
    def get_queryset(self):
        sort = [1,2,3,4]
        P = [x for _,x in sorted(zip(sort,P))]
        return P

И я получил и ошибка:

'list' object has no attribute 'model'

Есть ли способ вернуть список или решить эту проблему? Спасибо всем.

1 Ответ

0 голосов
/ 02 ноября 2019

get_queryset ожидает, что вы вернете набор запросов django. например, что-то, действующее в ORM через Product.objects...

Вы возвращаете список, а не набор запросов, и в указанном списке нет моделей

Если вы хотите вернуть отсортированный набор запросов,

return self.queryset.order_by(<field>)

Ваша позиция по умолчанию, когда вы делаете что-либо с orm, набором запросов и т. Д., Должна быть в базе данных. Это будет гораздо эффективнее, чем в Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...