😎

Djangoのモデルを利用したクエリでSQLを確認する

2024/08/19に公開

DjangoでSQLを確認

すぐに忘れてしまうので、モデルを利用したクエリ処理をを備忘録としてまとめておく

コンソールに出力

settings.pyに追加します

settings.py
LOGGING = {
    'disable_existing_loggers': False,
    'version': 1,
    'handlers': {
        'console': {
            'class': 'logging.StreamHandler',
            'level': 'DEBUG', 
        },
    },

    'loggers': {
        'django.db.backends': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
    },
}

shellで表示する

python manage.by shellでSQLを表示する

$ python manage.py shell
import logging
l = logging.getLogger('django.db.backends')
l.setLevel(logging.DEBUG)
l.addHandler(logging.StreamHandler())

shellでクエリで個別に表示する

$ python manage.py shell
from xxx.models import モデル名
print(モデル名.all().query)

Discussion