Django ORM對(duì)數(shù)據(jù)庫(kù)操作的封裝相當(dāng)完善,日常大部分?jǐn)?shù)據(jù)庫(kù)操作都可以通過(guò)ORM實(shí)現(xiàn)。但django將查詢過(guò)程隱藏在了后臺(tái),這在開(kāi)發(fā)時(shí)可能會(huì)略顯晦澀,并且使用方式不當(dāng)還會(huì)造成開(kāi)銷(xiāo)過(guò)大。
那么如何查看django何時(shí)執(zhí)行了什么sql語(yǔ)句呢?答案是使用Logging
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'simple': {
'format': '[%(asctime)s] %(message)s'
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
},
'loggers': {
'django': {
'handlers': ['console'],
'level': 'DEBUG',
},
},}然后啟動(dòng)runserver,瀏覽需要訪問(wèn)數(shù)據(jù)庫(kù)的頁(yè)面,在shell中即可看見(jiàn)相關(guān)日志
