django의 모든 원시 SQL 쿼리 보기
이를 위한 좋은 옵션이 하나 있습니다.
서버 로그
로깅 수준을 DEBUG로 변경합니다.
settings.py에 이 작은 스니펫을 추가할 수 있습니다.
if DEBUG:
import logging
l = logging.getLogger('django.db.backends')
l.setLevel(logging.DEBUG)
l.addHandler(logging.StreamHandler())
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
},
},
'loggers': {
'django': {
'handlers': ['console'],
'level': 'DEBUG',
'propagate': True,
},
},
}
그런 다음 보기나 테스트 또는 다른 파일 내부에 디버그 수준 변경을 추가하십시오.
import logging
l = logging.getLogger('django.db.backends')
l.setLevel(logging.DEBUG)
l.addHandler(logging.StreamHandler())
또는 settings.py에 추가하여 전역적으로 사용할 수도 있습니다.
if DEBUG:
import logging
l = logging.getLogger('django.db.backends')
l.setLevel(logging.DEBUG)
l.addHandler(logging.StreamHandler())
그런 다음 실행 중인 서버의 로그를 관찰합니다.
쿼리셋 쿼리 매개변수
python manage.py shell
from model import ExampleModel
queryset = ExampleModel.objects.all()
print(queryset.query)
or
queryset.raw
Reference
이 문제에 관하여(django의 모든 원시 SQL 쿼리 보기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/tomaszd/see-all-raw-sql-queries-in-django-3lh0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)