Запрос Django ORM работает в оболочке, но в Api View выдает ошибку по времени

У меня есть большой список идентификаторов и я хочу фильтровать объекты по этим идентификаторам:

list_of_ids = [1, 2, 3, 4, ...]

MyModel.objects.filter(id__in=list_of_ids)[:20]

Этот запрос отлично работает из оболочки, но когда я пытаюсь сделать то же самое в API View, происходит тайм-аут:

from rest_framework.response import Response
from rest_framework.views import APIView


class MyModelAPIView(APIView):
    def get(self, request):
        ids = [1, 2, 3, 4, 5, ...]
        print(MyModel.objects.filter(id__in=ids)[:20])
        return Response({})
    

После того, как я получил ответ с кодом состояния 504, я вижу в логах терминала, что сделала функция печати:

django_1       | <QuerySet [<MyModel: 231>, <MyModel: 268>, <MyModel: 269>, <MyModel: 271>, <MyModel: 272>, <MyModel: 274>, <MyModel: 275>, <MyModel: 277>, <MyModel: 280>, <MyModel: 281>, <MyModel: 282>, <MyModel: 284>, <MyModel: 285>, <MyModel: 288>, <MyModel: 289>, <MyModel: 290>, <MyModel: 291>, <MyModel: 292>, <MyModel: 294>, <MyModel: 298>]>

Но я не могу найти, почему запрос не выполняется? Я не смог найти похожие проблемы там

Вернуться на верх