Сопоставление Middle SQLAlchemy 2.0 обновлено
Аналоги Django ORM в SQLAlchemy
Вопрос
Сопоставьте конструкцию Django ORM и её аналог в SQLAlchemy 2.0.
Попробуйте сами
Нажмите слева, потом подходящее справа.
Показать ответ и разбор
Коротко
Идеи у ORM одинаковые: JOIN для связей к одному, второй запрос для коллекций, блокировка строк, явная транзакция. Отличие в том, что в SQLAlchemy есть явная Session с identity map, а в Django соединение и транзакция привязаны к потоку неявно.
Правильные пары
select_relatedjoinedloadprefetch_relatedselectinloadselect_for_update()with_for_update()Model.objects.filter(...)session.scalars(select(Model).where(...))transaction.atomic()with session.begin():Разбор
Идеи у ORM одинаковые: JOIN для связей к одному, второй запрос для коллекций, блокировка строк, явная транзакция. Отличие в том, что в SQLAlchemy есть явная Session с identity map, а в Django соединение и транзакция привязаны к потоку неявно.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.