调试Django时打印SQL语句的日志代码实例

yipeiwu_com7年前Python基础

这篇文章主要介绍了调试Django时打印SQL语句的日志代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

设置里面添加如下代码:

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

自己写个方法

from django.db import connection
from django.db.models.query import QuerySet
def getSql(res):
  if type(res) == QuerySet:
    sql = str(res.query)
  else:
    queries = connection.queries
    sql = str(queries[-1].get('sql'), 'utf-8')
  print('\033[1;34m' + '=' * len(sql))
  print(sql)
  print('=' * len(sql) + '\033[0m')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python RC4加密操作示例【测试可用】

python RC4加密操作示例【测试可用】

本文实例讲述了python RC4加密操作。分享给大家供大家参考,具体如下: # -*- conding:utf-8 -*- from Crypto.Cipher import AR...

python 判断自定义对象类型

要判断自定义对象的类型,用__class__方法,或者用isinstance(object, class-or-type-or-tuple)-->bool 用__class__不能...

使用GitHub和Python实现持续部署的方法

使用GitHub和Python实现持续部署的方法

借助 GitHub 的网络钩子webhook,开发者可以创建很多有用的服务。从触发一个 Jenkins 实例上的 CI(持续集成) 任务到配置云中的机器,几乎有着无限的可能性。这篇教程将...

pandas按若干个列的组合条件筛选数据的方法

pandas按若干个列的组合条件筛选数据的方法

还是用图说话 A文件: 比如,我想筛选出“设计井别”、“投产井别”、“目前井别”三列数据都为11的数据,结果如下: 当然,这里的筛选条件可以根据用户需要自由调整,代码如下: #...

在Pycharm中将pyinstaller加入External Tools的方法

在Pycharm中将pyinstaller加入External Tools的方法

Pycharm: 2017.1.2 PyInstaller: 3.3.1 第一步:安装pyinstaller 网上有很多种方法,在此不赘述。pycharm中,安装很方便。 进入设置(co...