Запрос 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>]>
Но я не могу найти, почему запрос не выполняется? Я не смог найти похожие проблемы там