Django ORM對數(shù)據(jù)庫操作的封裝相當(dāng)完善,日常大部分?jǐn)?shù)據(jù)庫操作都可以通過ORM實現(xiàn)。但django將查詢過程隱藏在了后臺,這在開發(fā)時可能會略顯晦澀,并且使用方式不當(dāng)還會造成開銷過大。
那么如何查看django何時執(zhí)行了什么sql語句呢?答案是使用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', }, },}
然后啟動runserver,瀏覽需要訪問數(shù)據(jù)庫的頁面,在shell中即可看見相關(guān)日志