시작
Part 7에 이어 간단한 설문조사(Polls) 앱을 구축했고 이번이 마지막 파트로 서드파티 패키지에 대해 알아보려고 합니다. 풍부한 서드파티 패키지 생태계가 존재한다는 것이 Django의 강점 중 하나입니다. 본 포스트에서는 macOS와 IntelliJ IDEA Ultimate을 사용합니다.
본문
Django Debug Toolbar 설치
1. 패키지 설치
python -m pip install django-debug-toolbar
Django와 통합되는 서드파티 패키지를 프로젝트와 통합하려면 설치 후 설정이 필요합니다. INSTALLED_APPS
설정에 패키지의 Django 앱을 추가해야 하는 경우가 종종 있습니다. 일부 패키지에는 URLconf(urls.py)
추가와 같은 다른 변경도 필요합니다.
2. 전제 조건 확인
핵심 Django 두 가지가 필요합니다. 이는 Django의 기본 startproject
템플릿에 이미 구성되어 있으므로 대부분의 경우 이미 설정되어 있습니다.
첫째로 django.contrib.staticfiles
가 INSTALLED_APPS
설정에 포함되어 있어야 하며 제대로 설정되어 있어야 합니다.
INSTALLED_APPS = [
# ...
"django.contrib.staticfiles",
# ...
]
STATIC_URL = "static/"
둘째로 TEMPLATES
설정에 APP_DIRS
옵션이 True
로 설정된 DjangoTemplates
백엔드가 포함되어 있어야 합니다.
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"APP_DIRS": True,
# ...
}
]
3. 앱 설치
debug_toolbar
를 INSTALLED_APPS
설정에 추가합니다.
INSTALLED_APPS = [
# ...
"debug_toolbar",
# ...
]
4. URLs를 추가
django-debug-toolbar
의 URL을 프로젝트의 URLconf에 추가합니다.
from django.urls import include, path
from debug_toolbar.toolbar import debug_toolbar_urls
urlpatterns = [
# ... the rest of your URLconf goes here ...
] + debug_toolbar_urls()
그런데 일반적으로 디버깅 시에 많이 사용하기 때문에 아래와 같은 방법을 사용합니다.
from django.contrib import admin
from django.urls import include, path
from django.conf import settings
urlpatterns = [
path("polls/", include("polls.urls")),
path("admin/", admin.site.urls),
]
if settings.DEBUG:
import debug_toolbar
urlpatterns = [
path("__debug__/", include(debug_toolbar.urls)),
] + urlpatterns
5. Middleware 추가
settings.py
에서 MIDDLEWARE
에 debug_toolbar.middleware.DebugToolbarMiddleware
를 추가합니다.
MIDDLEWARE = [
# ...
"debug_toolbar.middleware.DebugToolbarMiddleware",
# ...
]
MIDDLEWARE의 순서가 중요합니다. 가능한 한 빨리 목록에 디버그 도구 모음 미들웨어를 포함해야 합니다. 그러나 GZipMiddleware와 같이 응답 콘텐츠를 인코딩하는 다른 미들웨어 뒤에 와야 합니다.
6. 내부 IP 구성
Debug Toolbar
는 IP 주소가 Django의 INTERNAL_IPS
설정에 나열된 경우에만 표시됩니다. 따라서 로컬에서 확인하기 위해 127.0.0.1
을 settings.py
의 INTERNAL_IPS
에 추가합니다.
INTERNAL_IPS = [
"127.0.0.1",
]
이제 접속하면 아래와 같이 toolbar가 보입니다. 이를 이용해 다양한 내용을 확인할 수 있습니다. 주의 템플릿에 body
태그가 필요합니다.
기타 서드파티 패키지 설치
환상적인 Django 리소스인 Django Packages
를 사용하여 더 많은 서드파티 패키지를 찾을 수 있습니다. 하지만 Django에서 어떤 서드파티 패키지를 사용해야 할지 결정하는 것이 어려울 수 있습니다. Django에서 이와 관련된 블로그를 추천하였습니다.
https://adamj.eu/tech/2021/11/04/the-well-maintained-test/
마무리
Part 8에서는 서드파티 패키지를 다루는 방법을 살펴보았습니다. Django에서 다양한 서드파티 앱을 지원하며 사용할 수 있습니다. 하지만 서드파티 패키지를 선택할 때 고민이 있을 수 있으며 이에 대한 간단한 가이드를 확인했습니다. 이로써 첫 번째 Django 앱 만들기를 마무리하게 되었습니다. 아직 갈 길이 멀고 Django의 더 깊은 세계로 들어가려고 합니다. 좋은 하루 보내세요.
참고자료
'Django' 카테고리의 다른 글
DRF Tutorial 2 Requests and Responses (0) | 2024.09.11 |
---|---|
DRF Tutorial 1 Serialization (0) | 2024.09.11 |
첫 번째 Django 앱 만들기 (Part 7: Customizing the admin site) (1) | 2024.08.23 |
첫 번째 Django 앱 만들기 (Part 6: Static files) (0) | 2024.08.22 |
첫 번째 Django 앱 만들기 (Part 5: Testing) (0) | 2024.08.21 |
댓글