Как обновить поля связанной модели в одном запросе с помощью Django ORM или SQL?
Я хочу обновлять поля модели и поля связанной модели в одном запросе в Django:
Link.objects.filter(alpha=True).update(
alpha=False,
target__backup_of_original_start=F('target__original_start'),
target__backup_of_original_end=F('target__original_end'),
target__original_start=F('target__start'),
target__original_end=F('target__end'),
)
В этом вопросе я вижу, что это невозможно с помощью update
. Можно ли преодолеть это ограничение, используя Django ORM или хотя бы простой SQL? И как?
Вы можете создавать SQL хранимые процедуры и SQL представления для выполнения только одного запроса к БД.
Полезный ресурс: Какой лучший способ доступа к хранимым процедурам в ORM Django