Карточка Middle SQLAlchemy 2.0 обновлено

Identity map

Вопрос

Что такое identity map в Session?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

Словарь «первичный ключ - объект» внутри сессии. Один и тот же ряд базы в одной сессии представлен одним объектом Python. session.get(User, 1) сначала смотрит в identity map и может не делать запрос.

Ответ

Словарь «первичный ключ -> объект» внутри сессии. Один и тот же ряд базы в одной сессии представлен одним объектом Python. session.get(User, 1) сначала смотрит в identity map и может не делать запрос.

Разбор

Поэтому две загрузки одного пользователя в одной сессии вернут один объект, а изменения через одну ссылку видны через другую.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме