반응형
장고(Django)에서 URL 별칭(name)
장고(Django)에서 URL 별칭(name)이란, 특정 URL 패턴에 이름을 붙여주는 것을 말합니다. 이렇게 이름을 붙이면 템플릿이나 뷰에서 직접 URL 문자열을 쓰지 않고, 이름으로 해당 URL을 참조할 수 있어 유지보수가 훨씬 쉬워집니다.

🔹 URL 별칭의 정의 방법
urls.py 파일에서 path() 함수의 name 인자를 사용합니다.
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'), # URL 별칭 'index'
path('<int:question_id>/', views.detail, name='detail'), # URL 별칭 'detail'
]
🔹 별칭 사용 예시
1. 템플릿에서 url 태그로 사용
<a href="{% url 'index' %}">홈으로</a>
<a href="{% url 'detail' question_id=3 %}">질문 보기</a>
※ question_id는 URL 경로에서 <int:question_id>/ 처럼 변수로 정의된 경우입니다.
2. 파이썬 코드에서 reverse() 함수로 사용
from django.urls import reverse
reverse('index')
# 출력: '/'
reverse('detail', args=[3])
# 출력: '/3/'
✅ URL 별칭을 사용하는 이유
| 이유 | 설명 |
| 유지보수 용이 | URL 구조가 바뀌어도 별칭만 유지하면 전체 코드를 고칠 필요 없음 |
| 가독성 향상 | url 'detail'처럼 의미 있는 이름 사용 가능 |
| 중복 제거 | 여러 곳에서 동일 URL을 참조할 수 있음 |
🔔 실전 팁
- 하나의 프로젝트에서 index, detail, create, update, delete 등의 일관된 네이밍을 사용하는 것이 좋습니다.
- 앱 이름까지 붙여서 url 'pybo:detail'처럼 네임스페이스(namespace)를 지정하면 앱 간 이름 충돌을 방지할 수 있습니다.
반응형
'컴퓨터 활용 > 노년에 즐기는 코딩' 카테고리의 다른 글
| 부트스트랩(Bootstrap)을 꼭 이용해야 할까요? (3) | 2025.07.18 |
|---|---|
| 스타일시트(CSS)를 이용한 화면 꾸미기 (9) | 2025.07.17 |
| 리눅스 서버에서 타임존(Timezone) 설정 (0) | 2025.07.15 |
| 전자책 관리 도구, Calibre(캘리버)와 '문화공감 여름학교' (1) | 2025.07.14 |
| [Calibre] Get Involved란? (3) | 2025.07.13 |
댓글