Как оптимизировать обратный запрос внешнего ключа в DjangoORM?
У меня есть следующие отношения:
Я пытаюсь выбрать все задания со всеми экземплярами и их транспортными средствами. Однако это очень медленный запрос.
Насколько я понимаю, я должен использовать prefetch_related, потому что это отношение OneToMany.
Моя модель InstanceModel имеет обратный внешний ключ к Task:
task = models.ForeignKey(TaskModel, on_delete=models.CASCADE, related_name="instances")
Я попытался выполнить подобный запрос в DjangoORM:
TaskModel.objects.filter(department_id=department_id).prefetch_related("instances", "instances__vehicle")
Но это очень медленно. Есть ли способ оптимизировать это или отношения по своей природе ограничивают этот шаблон запроса?
Запуск в Django 3.x