728x90
반응형
SMALL
URL
URL은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 즉, 컴퓨터 네트워크와 검색 메커니즘에서의 위치를 지정하는, 웹 리소스에 대한 참조이다. 쉽게 말해서, 웹 페이지를 찾기위한 주소를 말한다.
URLconf
URLconf 용어는 URL과 뷰를 매핑해주는 urls.py 파일을 말한다. URLconf를 정의할 때 하나의 파일 또는 2개의 파일에 정의할 수도 있다. 보통 프로젝트는 전체 URL을 정의하는 프로젝트 URL과 앱마다 정의하는 앱 URL 2계층으로 나눠서 코딩하는 방향이 좋다. 이 방식은 URLconf 모듈을 계층적으로 구성하므로 변경도 쉽고 확장도 용이해진다.
URL 패턴별로 이름을 지정할 수 있고 패턴 그룹에 대해 이름 공간을 지정할 수 있따. 이는 reverse() 함수나 {% url %} 템플릿 태그를 사용하여 소스에 URL을 하드 코딩하지 않아도 필요한 URL을 추출할 수 있는 기능이 있다.
장고에 요청 (URL)이 들어왔을 때 다음과 같이 수행한다.
|
urlpatterns
경로를 추가하는 방법에는 직접 path를 부여하는 것과 include를 사용하는 것이 있다. 직접 추가는 방법은 myproject/urls.py을 다음과 같이 프로그래밍한다.
from polls import views
urlpatterns = [
path('admin/', admin.site.urls),
path("polls/", views.index, name="index"),
path("polls/<int:question_id>/", views.detail, name='detail'),
path("polls/<int:question_id>/vote/", views.vote, name='vote'),
path("polls/<int:question_id>/result/", views.results, name='results')
]
include를 사용하는 경우 myproject/urls.py와 polls/urls.py를 다음과 같이 프로그래밍한다.
# myproject/urls.py
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('polls/', include('polls.urls'))
]
# polls/urls.py
from django.urls import path
from . import views
app_name = 'polls'
urlpatterns = [
path("", views.index, name="index"),
path("<int:question_id>/", views.detail, name='detail'),
path("<int:question_id>/vote/", views.vote, name='vote'),
path("<int:question_id>/result/", views.results, name='results')
]
728x90
반응형
LIST
'App Programming > Django' 카테고리의 다른 글
[Django] 템플릿 (Template) (0) | 2023.06.22 |
---|---|
[Django] 뷰 (View) (0) | 2023.06.22 |
[Django] 모델 (Model) (0) | 2023.06.20 |
[Django] MVT 패턴 (0) | 2023.06.20 |
[Django] 서버 배포 (0) | 2023.04.10 |