Django는 웹 애플리케이션 개발에 자주 사용되는 파이썬 웹 프레임워크입니다. Django에서 URL 경로를 정의하는 방법에 대해 알아보겠습니다.
-
URLconf 파일 생성 먼저 Django 프로젝트 내에 URLconf 파일을 생성해야 합니다. 보통
urls.py
라는 이름으로 생성합니다. 이 파일은 웹 애플리케이션의 모든 URL 경로를 관리하는 역할을 합니다. -
URL 매칭 및 뷰 함수 지정 URLconf 파일에는 URL 경로에 대한 매칭 패턴과 해당 경로에 연결된 뷰 함수를 지정해야 합니다.
예를 들어,
/articles/
경로에 대한 요청을 처리하기 위해views.py
파일에 정의된article_list
뷰 함수를 사용하고 싶다면, URLconf 파일에 다음과 같이 작성합니다.from django.urls import path from . import views urlpatterns = [ path('articles/', views.article_list), ]
이렇게 작성된 URLconf는
urls.py
파일 내에서urlpatterns
리스트에 매칭 패턴과 뷰 함수를 추가하는 형태로 구성됩니다. -
URL 매개변수와 정규 표현식 활용 Django의 URLconf에서는 URL 패턴에 매개변수를 정의할 수 있습니다. 매개변수는 URL 경로에서 동적인 값을 전달하기 위해 사용됩니다.
예를 들어,
/articles/<int:pk>/
경로에 대한 요청을 처리하기 위해views.py
파일에 정의된article_detail
뷰 함수를 사용하고 싶다면, URLconf 파일에 다음과 같이 작성합니다.from django.urls import path from . import views urlpatterns = [ path('articles/<int:pk>/', views.article_detail), ]
이렇게 작성된 URLconf는
pk
라는 정수형 매개변수를article_detail
뷰 함수로 전달합니다. -
include를 활용한 URL 분리 Django에서는 복잡한 웹 애플리케이션을 개발할 때 URLconf를 여러 파일로 분리하여 관리할 수 있습니다. 이때
include()
함수를 사용합니다.예를 들어, Django 프로젝트 내에
blog
앱이 있고, 해당 앱 내에urls.py
파일을 생성하여 URLconf 파일을 관리하고 싶다면, 프로젝트의 URLconf 파일에 다음과 같이 작성합니다.from django.urls import include, path urlpatterns = [ path('blog/', include('blog.urls')), ]
이렇게 작성된 URLconf는
blog/
경로로 들어오는 요청을blog
앱의 URLconf 파일로 전달합니다.
URLconf는 Django에서 중요한 역할을 담당하는 파일로, 웹 애플리케이션의 URL 경로를 관리하는 데 필수적입니다. 이를 통해 각 경로에 대한 적절한 뷰 함수를 매칭시킬 수 있습니다.
더 자세한 내용은 Django 공식 문서를 참고하시기 바랍니다.