728x90
urls 분리
애플리케이션 별로 urls를 별도로 설정해주기 위해서는 프로젝트 폴더 urls.py에서 분리 작업 필요
# ProjectName/urls.py
from django.url import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('AppName/', include('AppNames/urls')),
]
- import 목록에 include 추가
- urlpattens에 path('앱 이름/', include('앱이름.urls')) 추가
- 앱 이름은 자유롭게 설정 할 수 있으며, 앱 이름 뒤 '/' 추가 주의
- 앱이름을 포함하는 요청이 오면, 이동할 경로 지정하는 작업
애플리케이션 urls 생성
애플리케이션 폴더 내부에 urls.py 생성
$ cd AppName
$ touch urls.py
- AppName 애플리케이션 폴더 내부로 이동
- 이동 후 내부에 urls.py 파일 생성
- 이 urls.py는 애플리케이션 이름으로 오는 url 요청을 관리하는 역할을 하게됨
애플리케이션 urls 작성
# AppName/urls.py
from django.urls import path
from . import views
app_name = 'AppName'
urlpatterns = [
# URL mapping -> include
path('index/', views.index, name='index'),
path('create/', views.create, name='create'),
path('<name>/profile/', views.profile, name='profile'),
]
- 전체적인 틀은 프로젝트 urls.py와 유사
- app_name에 애플리케이션 이름 작성 필수
- 제대로 작성하지 않으면 서버 실행 오류
- urlpatters 리스트 내부에는 AppName 이후 요청받을 url 작성
- 단순 문자열 외에도 pk 등 활용 가능
- 해당 url이 들어올 시 views 모듈 뒤에 작성된 이름의 함수 실행
- name="name" 부분은 해당 과정을 부를 이름 작성
- 다른 작업에서 이 url로 이동을 원할 시, 지칭 가능
'Django' 카테고리의 다른 글
Django DRF(Django rest framework) 시작하기 (0) | 2023.05.15 |
---|---|
Django DB(데이터베이스) 테이블 설정하기 (0) | 2023.05.14 |
Django 페이지 생성하기 (0) | 2023.05.09 |
Django 기본 탬플릿(base.html) 생성, App 탬플릿 상속 (0) | 2023.04.30 |
Django 시작하기(가상환경, 프로젝트, 앱 생성) 맥M1, 윈도우 (0) | 2023.04.28 |