使用优秀的Django-Devserver,我发现我的代码中有各种有趣的、意想不到的SQL调用.我想知道调用来自哪里,因此我正在寻找一种方法来获得由Python shell中的Django ORM生成的所有SQL调用的日志(log)或打印输出.也就是说,当我通过Python shell执行Django ORM调用时,我希望看到结果SQL打印出来或记录下来.
我注意到有几个解决方案可以将日志(log)信息添加到html页面.有没有简单的方法可以转储到命令行?
使用优秀的Django-Devserver,我发现我的代码中有各种有趣的、意想不到的SQL调用.我想知道调用来自哪里,因此我正在寻找一种方法来获得由Python shell中的Django ORM生成的所有SQL调用的日志(log)或打印输出.也就是说,当我通过Python shell执行Django ORM调用时,我希望看到结果SQL打印出来或记录下来.
我注意到有几个解决方案可以将日志(log)信息添加到html页面.有没有简单的方法可以转储到命令行?
如果您在shell中,或者在任何地方,您可以使用queryset方法
query.as_sql()
打印SQL命令.
例如:
MyModel.objects.all().query.as_sql()