我有一个需要数据并应该将其插入数据库的表单。当我处理该表单时,它给了我一个值错误,但是当我进入数据库并尝试手动插入它时,它工作正常。
为了调试这种情况,我想看看 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 查询。
其他方式
go shell
python manage.py shell
>>from yourmodel import Example
>>queryset = Example.objects.all()
>>print(queryset.query)
您可以看到原始查询字符串。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)