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

yipeiwu_com6年前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加载带有注释的Json文件实例

由于json文件不支持注释,所以如果在json文件中标记了注释,则使用python中的json.dump()无法加载该json文件。 本文旨在解决当定义“//”为json注释时,如何正确...

python enumerate函数的使用方法总结

enumerate函数用于遍历序列中的元素以及它们的下标。 enumerate函数说明: enumerate()是python的内置函数 enumerate在字典上是枚举、列举的意思...

对python3 Serial 串口助手的接收读取数据方法详解

其实网上已经有许多python语言书写的串口,但大部分都是python2写的,没有找到一个合适的python编写的串口助手,只能自己来写一个串口助手,由于我只需要串口能够接收读取数据就可...

Python的Flask框架中Flask-Admin库的简单入门指引

Python的Flask框架中Flask-Admin库的简单入门指引

 Flask-Admin是一个功能齐全、简单易用的Flask扩展,让你可以为Flask应用程序增加管理界面。它受django-admin包的影响,但用这样一种方式实现,开发者拥...

python基础教程之自定义函数介绍

函数最重要的目的是方便我们重复使用相同的一段程序。 将一些操作隶属于一个函数,以后你想实现相同的操作的时候,只用调用函数名就可以,而不需要重复敲所有的语句。 函数的定义 首先,我们要定义...