안녕하세요, 장고로 개발을 하는 여러분들에게 희소식이 있습니다!
개발자들에게는 debug가 필수적인데요, django와 같은 프레임워크는 어떻게 debug할까요??
한번 살펴보도록 하겠습니다.
기본적으로 장고는 에러페이지에서 아래와 같이 어떤 에러이다, 어디서 에러가 났다 라는 얘기를 해주는데요
좀 더 직관적이, 페이지내부에서 디버깅을 해주는 디버깅 툴이 있습니다.
우선, django프로젝트에서 설치를 해주도록 하겠습니다.
1. 설치
django-debug-toolbar를 설치 해 주어야 합니다.
전체에서 사용 할 수 있도록 일반 cmd창에서 설치해도 무방하지만, 프로젝트의 가상환경 마다 설치하기를 권장드립니다.
장고 프로젝트의 가상환경을 실행 한 후에 아래의 커맨드 명령어 중 선택해서 입력 해 주세요.
어떤 명령어든 상관없습니다.
pip3 install django-debug-toolbar
pip install django-debug-toolbar
설치를 해서 바로 사용할 수 있는것이 아니라, 프로젝트에서 사용 할 수 있도록 설정을 해 주어야 합니다.
2.프로젝트 settings.py , urls.py 설정
장고에서는 앱을 설치/작성 할 때마다 장고프레임웍이 인식 할 수 있도록 settings.py에 명시를 해 주어야 합니다.
설치한 프로젝트 경로에 들어가 setting.py에 django-debug-toolbar 사용을 위해 필요 한 것들을 작성 해 주도록 하겠습니다.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'debug_toolbar'
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware'
]
INTERNAL_IPS = ('127.0.0.1')
각각 INSTALLED_APPS와 MIDDLEWARE의 가장 하단에 있는 debug-toolbar 세팅을 넣어주고, INTERNAL_IPS 까지 작성 해 주세요.
그리고, 프로젝트 루트 폴더의 url.py에 아래와 같은 debug 세팅을 추가 해 줍니다.
if settings.DEBUG:
import debug_toolbar
urlpatterns += [
url(r'^__debug__/', include(debug_toolbar.urls)),
]
이제 모든 창에서 django-debug-toolbar가 나타나는 것을 볼 수 있습니다!
'Old Branch' 카테고리의 다른 글
Django - tweetme 소셜서비스 구현해보기 (12) - Model Form & Validation (0) | 2019.10.29 |
---|---|
Django - tweetme 소셜서비스 구현해보기 (11) - Dynamic URL Routing (0) | 2019.10.28 |
Django - tweetme 소셜서비스 구현해보기 (10) - Class based View (0) | 2019.10.24 |
Django - tweetme 소셜서비스 구현해보기 (9) - View function과 Templates에서의 응용 (0) | 2019.10.23 |
Django - tweetme 소셜서비스 구현해보기 (8) - Querying database & 콘솔, 웹에서 출력하기 (0) | 2019.10.22 |