바뀜

256 바이트 추가됨 ,  2021년 4월 20일 (화) 20:24
8번째 줄: 8번째 줄:     
매핑할 때 추출한 단어들을 뷰에 인자로 넘겨준다.
 
매핑할 때 추출한 단어들을 뷰에 인자로 넘겨준다.
===보낼 수 있는 인자===
+
 
주소창 안에 <code>~주소/<타입:변수명></code> 형태로 인자를 전달한다.
+
매칭되는 뷰가 없다면 에러를 처리하는 뷰를 호출한다.
 +
 
 +
주소창 안의 <code>~주소/<타입:변수명></code> 형태의 주소를 분석하여 뷰에 인자(타입:변수명)를 전달한다.
 +
 
 +
===사용 가능한 타입===
 
{| class="wikitable"
 
{| class="wikitable"
 
!type
 
!type
29번째 줄: 33번째 줄:  
|기본적으로 str과 동일. /를 포함한 모든 문자열과 매치. URL패턴의 전부를 추출할 때 사용.
 
|기본적으로 str과 동일. /를 포함한 모든 문자열과 매치. URL패턴의 전부를 추출할 때 사용.
 
|}ex) path('origin_image/<int:image_id>/', views.show_origin_image, name='origin_image'),
 
|}ex) path('origin_image/<int:image_id>/', views.show_origin_image, name='origin_image'),
 +
*setting.py의 ROOT_URLCONF 항목을 읽어 urls.py를 불러오고, urlpatterns변수에 지정된 패턴을 찾아 대응시킨다.
 
==어떻게?==
 
==어떻게?==
 
path()함수와 re_path()함수 따위를 통해 URL과 함수를 연결시킨다.
 
path()함수와 re_path()함수 따위를 통해 URL과 함수를 연결시킨다.
72번째 줄: 77번째 줄:  
</syntaxhighlight>
 
</syntaxhighlight>
 
===정규표현식의 사용===
 
===정규표현식의 사용===
정규표현식을 사용해서 URL패턴을 작성할 수도 있다. <int:year> 대신 (?P<year>[0-9]{4}) 개인적으로 앞이 훨씬 직관적이고 편한데?
+
정규표현식을 사용해서 URL패턴을 작성할 수도 있다. <int:year> 대신 (?P<year>[0-9]{4}) 정규표현식에 익숙하지 않다면 힘들다;;
    
(정규표현식을 쓸 때엔 path()대신 re_path()함수를 사용한다.)
 
(정규표현식을 쓸 때엔 path()대신 re_path()함수를 사용한다.)