반응형
URL 분리하기
'pybo/urls.py'를 분리하기 전 'config/urls.py' 파일은 다음과 같습니다. 웹 브라우저에서 pybo 요청이 있으면 'pybo' 디렉터리 인덱스를 보여주라는 환경 설정입니다.
분리하는 작업은 프로젝트의 짜임새를 갖추기 위함입니다. 방법은 include 함수를 이용해서 'pybo/' URL을 모듈화 해서 URL을 구분하는 것입니다. 방법은 'django.urls' 모듈을 이용해서 path 함수 외에 include 함수를 추가합니다. urlpatterns 리스트에서 두 번째 path 함수에 include('pybo.urls')를 임포트 하도록 수정합니다.
'pybo/'로 시작하는 요청은 config/urls.py 파일이 아닌 pybo/urls.py 파일을 통해 처리하게 수정한 것입니다.
pybo/urls.py 생성
pybo 앱 디렉터리에 urls.py 파일을 생성합니다. 이 파일에서 장고 웹 프레임워크에서 URL 패턴을 정의하고 있습니다.파일의 내용은 다음과 같습니다.
- from django.urls import path: path 함수를 django.urls 모듈로부터 임포트합니다. 이 함수는 URL과 뷰를 매핑하는 데 사용됩니다.
- from . import views: 현재 디렉터리의 views.py 파일로부터 뷰를 임포트합니다. 여기서 .는 현재 패키지를 나타냅니다.
- urlpatterns = [...]: urlpatterns 리스트는 URL 패턴과 뷰 함수를 연결합니다. 여기서 path 함수를 사용하여 특정 URL 패턴을 뷰와 매핑합니다.
- path('', views.index): path 함수를 사용하여 루트 URL '' (즉, 웹 사이트의 홈페이지)를 views.py 파일의 index 뷰 함수와 연결합니다. 사용자가 웹 애플리케이션의 홈페이지 (예: localhost:8000/pybo/)에 접속하면, index 뷰 함수가 호출됩니다.
정리
장고가 브라우저의 요청에 따라 읽는 순서는 'config/urls.py', 'pybo/urls.py' 입니다. 파일 순서로 따라가며 URL 매핑을 찾아 브라우저 화면에 결과를 출력합니다.
반응형
'도서로 공부하는 프로그래밍 > 코딩 자율학습' 카테고리의 다른 글
[파이썬] 중첩된 자료구조 (27) | 2024.02.25 |
---|---|
[장고] 모델로 데이터를 관리하는 장고 (30) | 2024.02.24 |
[장고] git 브랜치 관리로 시작되는 URL 분리하기 (26) | 2024.02.22 |
[장고] volcano 프로젝트 github 레포지터리로 관리 (26) | 2024.02.21 |
[장고] Django의 관리자 URL (23) | 2024.02.20 |