Django shell調(diào)試models輸出的SQL語(yǔ)句方法
在settings.py里,配置如下logging:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console':{
'level':'DEBUG',
'class':'logging.StreamHandler',
},
},
'loggers': {
'django.db.backends': {
'handlers': ['console'],
'propagate': True,
'level':'DEBUG',
},
}
}
使用效果:
$ python manage.py shell In [1]: from test.models import A In [2]: A.objects.all() (0.001) SELECT "app1_a"."id", "app1_a"."name" FROM "app1_a" LIMIT 21; args=() [<A: A object>]
在shell命令行的環(huán)境下,可以使用 django-exension's shell_plus 命令并打開 --print-sql 選項(xiàng)。
python manage.py shell_plus --print-sql
>>> Author.objects.all() SELECT "library_author"."id", "library_author"."name" FROM "library_author" LIMIT 21 Execution time: 0.001393s [Database: default] <QuerySet [<Author: Author object>]>
django提供的內(nèi)置記錄器
django 在Django層次結(jié)構(gòu)中的所有消息記錄器。沒有使用此名稱發(fā)布消息,而是使用下面的記錄器之一。
django.request 與請(qǐng)求處理相關(guān)的日志消息。5xx響應(yīng)被提升為錯(cuò)誤消息;4xx響應(yīng)被提升為警告消息。
django.server 與由RunServer命令調(diào)用的服務(wù)器所接收的請(qǐng)求的處理相關(guān)的日志消息。HTTP 5XX響應(yīng)被記錄為錯(cuò)誤消息,4XX響應(yīng)被記錄為警告消息,其他一切都被記錄為INFO。
django.template 與模板呈現(xiàn)相關(guān)的日志消息
django.db.backends 有關(guān)代碼與數(shù)據(jù)庫(kù)交互的消息。例如,請(qǐng)求執(zhí)行的每個(gè)應(yīng)用程序級(jí)SQL語(yǔ)句都在調(diào)試級(jí)別記錄到此記錄器。
以上這篇Django shell調(diào)試models輸出的SQL語(yǔ)句方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python網(wǎng)絡(luò)爬蟲實(shí)例講解
這篇文章主要為大家詳細(xì)介紹了Python網(wǎng)絡(luò)爬蟲實(shí)例,爬蟲的定義、主要框架等基礎(chǔ)概念,感興趣的小伙伴們可以參考一下2016-04-04
Python定時(shí)任務(wù)框架APScheduler原理及常用代碼
這篇文章主要介紹了Python定時(shí)任務(wù)框架APScheduler原理及常用代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
Python實(shí)現(xiàn)帶圖形界面的炸金花游戲(升級(jí)版)
詐金花又叫三張牌,是在全國(guó)廣泛流傳的一種民間多人紙牌游戲,它具有獨(dú)特的比牌規(guī)則。本文將通過Python語(yǔ)言實(shí)現(xiàn)升級(jí)版的帶圖形界面的詐金花游戲,需要的可以參考一下2022-12-12
Python保留指定位數(shù)小數(shù)的5種方法總結(jié)
很多小伙伴在學(xué)習(xí)python的時(shí)候可能會(huì)遇到對(duì)數(shù)據(jù)進(jìn)行格式化輸出的需求,其中最常見的需求為保留幾位小數(shù),這篇文章主要給大家介紹了關(guān)于Python保留指定位數(shù)小數(shù)的5種方法,需要的朋友可以參考下2023-08-08
基于opencv和pillow實(shí)現(xiàn)人臉識(shí)別系統(tǒng)(附demo)
人臉識(shí)別就是一個(gè)程序能識(shí)別給定圖像或視頻中的人臉,本文主要介紹了opencv和pillow實(shí)現(xiàn)人臉識(shí)別系統(tǒng),本文不涉及分類器、訓(xùn)練識(shí)別器等算法原理,感興趣的可以了解一下2021-11-11
在Django中實(shí)現(xiàn)定時(shí)任務(wù)的多種方法
在 Django 項(xiàng)目中實(shí)現(xiàn)定時(shí)任務(wù)可以幫助自動(dòng)化執(zhí)行一些后臺(tái)任務(wù),如數(shù)據(jù)清理、定期報(bào)告生成等,以下是幾種常見的實(shí)現(xiàn)方式,每種方法都有其獨(dú)特的優(yōu)勢(shì)和適用場(chǎng)景,感興趣的小伙伴跟著小編一起來看看吧2024-08-08
Tensorflow2.10使用BERT從文本中抽取答案實(shí)現(xiàn)詳解
這篇文章主要為大家介紹了Tensorflow2.10使用BERT從文本中抽取答案實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
Python 帶星號(hào)(* 或 **)的函數(shù)參數(shù)詳解
這篇文章主要介紹了Python 帶星號(hào)(* 或 **)的函數(shù)參數(shù)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02

