Django1.6 transaction.atomic问题

Django1.6 transaction.atomic问题,第1张

概述我刚刚切换到Django 1.6(使用Posgres 9.1)并且有一些我无法自己回答的问题: >(已回答)如果我当前在一个或多个以及在哪个transaction.atomic块中,是否有打印/显示我的声明? >(已回答)我既没有启用TransactionMiddleware也没有将ATOMIC_REQUESTS设置为True.所以默认情况下我的代码不包含在transaction.atomic块中 我刚刚切换到Django 1.6(使用Posgres 9.1)并且有一些我无法自己回答的问题:

>(已回答)如果我当前在一个或多个以及在哪个transaction.atomic块中,是否有打印/显示我的声明?
>(已回答)我既没有启用TransactionMIDdleware也没有将ATOMIC_REQUESTS设置为True.所以默认情况下我的代码不包含在transaction.atomic块中,对吗?
>在transaction.atomic块中执行时,通过游标正确执行的SQL语句是否正确?有没有其他/更好的方法来提交它们?

with transaction.atomic():    cursor = connection.cursor()    cursor.execute(sql)

>我是否需要将cursor.executemany()包装在transaction.atomic块中,或者执行是否已经原子地执行?
>如何查看当前的自动提交状态?何时在连接开始时将事务设置为全局数据库设置?

解决方法 回答你的一个问题:

您可以使用从以下位置返回的连接对象来确定您当前是否处于原子块中:

来自django.db.transaction导入get_connection或django.db.connections中的任何连接对象

它有一个in_atomic_block属性.

我觉得最简单的只是看看django source

总结

以上是内存溢出为你收集整理的Django1.6 transaction.atomic问题全部内容,希望文章能够帮你解决Django1.6 transaction.atomic问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1204974.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存