Как обрабатывать исключения с помощью менеджера транзакций Pyramid? - PullRequest
3 голосов
/ 30 октября 2011

Я создаю свое первое приложение Pyramid (из Pylons) и пытаюсь понять, как обрабатывать исключения с помощью pyramid_tm ... Например, в Pylons я бы сделал что-то вроде

try:
   Session.add(object)
   Session.commit()
except IntegrityError:
   Session.rollback()
   flash("Object already present")

но как это сделать с pyramid_tm?

1 Ответ

5 голосов
/ 30 октября 2011

Используйте Session.flush() вместо Session.commit().

С pyramid_tm вы никогда не должны (не должны) делать commit() самостоятельно в коде обработки запросов.

...