【发布时间】:2011-07-12 15:45:15
【问题描述】:
@transection.commit_on_success
def recordIt(...)
try:
....
recordable = firstDataInsertionFunction(...)
if recordable:
myRec = SecondDataInsertion(.....)
except:
....
至于commit_on_success,如果我的第二次数据插入失败,django必须自动回滚,所以我的第一次数据插入也会被回滚……
但这不起作用,第一次插入的数据被保存到数据库中,而我在我的数据库上看不到第二次插入的结果...... try/except 是否会导致 commit_on_success 失败?因为正如文档所说:
如果函数成功返回,那么 Django 将提交此时函数内完成的所有工作。但是,如果函数引发异常,Django 将回滚事务。
并尝试处理所有异常。是我不工作的问题commit_on_success?
【问题讨论】:
标签: python django exception-handling