当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))