数据库事务何时被提交?例如,它是在每个响应生成的末尾吗?
为了解释这个问题:我需要开发一个更复杂的应用程序,我必须或多或少地手动控制数据库事务。特别是我必须能够设计一组表单,这些表单背后有一些复杂的逻辑(某种“向导”),但在最后一个表单和确认之前不得提交数据库操作。
当然,我可以在不更改任何数据库的情况下将所有内容放入 session ,但这不是解决方案,更改非常复杂,而且确实必须执行。所以唯一的方法就是不提交它。
现在回到问题:如果我了解它在 web2py 中是如何工作的,那么我将更容易决定这是否是一个适合我的框架。我是一名 java 和 php 程序员,我知道 python 但我还不知道 web2py ...
如果您在解释时知道任何网页,我也很感激。
谢谢!
最佳答案
您几乎可以在任何地方调用 db.commit() 和 db.rollback()。如果您不这样做并且该操作没有引发异常,它会在向客户端返回响应之前提交。如果它引发异常并且没有被显式捕获,它会回滚。
关于python - web2py 和数据库事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4979392/