Я создал менеджер контекста для получения транзакционного сеанса, следуя инструкциям здесь :
@contextmanager
def session_scope():
"""Provide a transactional scope around a series of operations."""
session = Session()
try:
yield session
session.commit()
except:
session.rollback()
raise
finally:
session.close()
И это прекрасно работает. Теперь я хотел бы сделать что-то подобное, но для сессий, которые я знаю, используются только для получения значений из базы данных.
Вместо session.commit()
что было бы лучше всего сделать с сеансом? Просто .rollback()
и все?