当Debug为False时,如何从Django打印sql查询

从 doc如何查看 Django 正在运行的原始 SQL 查询?

我可以通过以下方式执行sql:

from django.db import connection
connection.queries

但它只在一段时间内可用 Debug == True

如何将sql打印为Debug == False

谢谢

更新

我想要这样的东西:

from django.db import connection
from django.db import reset_queries

reset_queries()  # Clears the query.
with transaction.atomic():
    r = Amodel.objects.create(
        ...
    )

    Bmodel.objects.filter(id__in=handle_ids_).update(status=4)

# Prints the sql executed in this transaction block.
logger.info("[sql_execute]: {}".format(connection.queries))


以上是当Debug为False时,如何从Django打印sql查询的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>