事务在生产环境中正常工作(django 1.9 + Ubuntu + PosgreSQL),但它们对DEBUG = True的开发环境没有影响。
E.g。
with transaction.atomic()
do_stuff()
raise Exception()
由于异常,应该回滚do_stuff()对DB进行的更改。这在生产环境中按预期发生。
在dev环境中,do_stuff所做的更改不会回滚。我在django docs中找不到这种行为的任何解释。
为什么会这样?