gpt4 book ai didi

Django1.6 transaction.atomic 问题

转载 作者:行者123 更新时间:2023-12-04 20:43:32 26 4
gpt4 key购买 nike

我刚刚切换到 Django 1.6(使用 Posgres 9.1),有几个问题我自己无法回答:

  • (已回答)是否有声明打印/显示我当前是否在一个或多个内部并且其中 transaction.atomic块?
  • (已回答)我也没有 TransactionMiddleware启用或设置 ATOMIC_REQUESTS为真。所以默认情况下,我的代码不包含在 transaction.atomic 中块,对吗?
  • transaction.atomic 中执行时,通过游标执行的 sql 语句是否正确提交?堵塞?是否有另一种/更好的方式来提交它们?
    with transaction.atomic():
    cursor = connection.cursor()
    cursor.execute(sql)
  • 我需要包装cursor.executemany()transaction.atomic阻止还是执行已经原子地发生了?
  • 如何查看当前autocommit地位?状态何时在连接开始时设置为事务,作为全局数据库设置?
  • 最佳答案

    要回答您的问题之一:

    您可以使用 connection 确定您当前是否在原子块中。返回的对象:
    from django.db.transaction import get_connectiondjango.db.connections 内的任何连接对象

    其中有一个 in_atomic_block属性(property)。

    我觉得只要浏览一下 django source 就最容易了。

    关于Django1.6 transaction.atomic 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21819062/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com