gpt4 book ai didi

python - Django 如何查看生成的 SQL 查询?

转载 作者:太空狗 更新时间:2023-10-30 00:27:32 25 4
gpt4 key购买 nike

我有一个表单可以获取数据并将其插入到数据库中。当我处理该表单时,它给我一个值错误,但是当我转到数据库并尝试手动插入它时,它工作正常。

为了调试这种情况,我想看看 Django 正在生成哪些失败的查询。在调试网页上,我没有看到任何类似 SQL 查询的内容。

如何查看 Django 生成的实际查询?

请指教。谢谢。

最佳答案

使用日志记录怎么样?

你可以在settings.py中添加这个

LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
},
},
'loggers': {
'django': {
'handlers': ['console'],
'level': 'DEBUG',
'propagate': True,
},
},
}

你可以在任何 views.py 中添加它

import logging

l = logging.getLogger('django.db.backends')
l.setLevel(logging.DEBUG)
l.addHandler(logging.StreamHandler())

在您的控制台中,您可以检查 SQL 查询。

另一种方式

去壳

python manage.py shell

>>from yourmodel import Example
>>queryset = Example.objects.all()
>>print(queryset.query)

您可以看到原始查询字符串。

关于python - Django 如何查看生成的 SQL 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41389575/

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