URL 일부에 변수를 포함 시키는 것(변수는 view 함수의 인자로 전달 할 수 있음)
- 작성법
-<path_converter:variable_name>
URL 변수의 타입을 지정 (str, int, slug, uuid, path로 5가지 타입 지원)
각 앱에 URL을 정의하는 것 > 프로젝트와 각 앱이 URL을 나누어 관리를 편하게 하기 위함
2번째 앱 pages 생성 후 발생할 수 있는 문제
- view 함수 이름이 같거나 같은 패턴의 url 주소를 사용하게 되는 경우
- 아래 코드와 같이 해결할 수 있으나 더 좋은 방법이 필요
- ⇒ URL을 각자 app에서 관리하자!!
from articles import views as articels_views
from pages import views as pages_views
urlpatterns = [
...,
path('pages', pages_views.index),
]
프로젝트 내부 앱들의 URL을 참조할 수 있도록 매핑하는 함수
URL의 일치하는 부분까지 잘라내고,
남은 문자열 부분은 후속 처리를 위해 include된 URL로 전달
주어진 URL 패턴의 이름과 일치하는 절대 경로 주소를 반환
Trailing Slashes
- Django는 URL 끝에 '/'가 없다면 자동으로 붙임(Django 의 url 설계철학)
- '기술적인 측면에서, foo.com/bar와foo.com/bar/는 서로 다른 RUL
- 검색 엔진 로봇이나 웹 트래픽 분석 도구에서는 이 두 주소를 서로 다른 페이지로 봄- 그래서 Django는 검색 엔진이 혼동하지 않게 하기 위해 붙이는 것을 선택
- 그러나 모든 프레임워크가 이렇게 동작하는 것은 아니니 주의해야 함!