django 中的transaction(事务管理)
1.django默认的事务行为。
2.Tying transactions to HTTP requests
在Httprequest请求和相应都为出错的时候 会提交事务。要使用中间件
'django.middleware.transaction.TransactionMiddleware',
这是一个全局的控制。
3.在views中做事务管理
相对于2,第三种能更加细致的控制事务。主要采用装饰器来控制。
django.db.transaction.autocommit
使用 autocommit 装饰器时,会忽略全局事务设置,将某个视图函式转换化 Django 默认的事务提交行为,在在 views的方法里,一旦你调用了 model.save(), model.delete(),或是任何其他会写数据库的方法,事务就会被立刻提交。