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(),或是任何其他会写数据库的方法,事务就会被立刻提交。

django.db.transaction.commit_on_success
django.db.transaction.commit_manually
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。