Skill/Django
[Django] CRUD 정복하기(2)_Url
엉아_
2021. 9. 6. 01:03
728x90
- urls.p
: 장고 서버로 요청(request)이 들어오면, 그 요청이 어디로 가야하는지 인식하고 관련된 함수(view)로 넘겨준다.
새로운 테이블을 만들었다면 이제 urls.py 파일을 채워주자!
- 프로젝트 폴더의 urls.py
# config/urls.py
from django.contrib import admin
from django.urls import path
from articles import views
urlpatterns = [
path('admin/', admin.site.urls),
path('index/', views.index),
]
-> 프로젝트 폴더에서 앱(articles)의 urls.py로 바로 넘어갈수 있도록 경로를 만들어준다.
- 앱 폴더의 urls.py
from django.urls import path
from . import views
app_name = 'articles' # 앱 이름
urlpatterns = [
# Create
path('new/', views.new, name='new'), # url주소, 해당함수, url 이름
path('create/', views.create, name='create'),
# Read
path('', views.index, name='index'),
path('<int:pk>/', views.detail, name='detail'), # variable routing
# Update
path('<int:pk>/edit/', views.edit, name='edit'),
path('<int:pk>/update/', views.update, name='update'),
# Delete
path('<int:pk>/delete/', views.delete, name='delete'),
]
-> 해당 주소를 치면 view에 있는 해당 함수를 실행할 수 있도록 연결해준다.
✨ 여기서 잠깐!
- Variable routing
- 동적 라우팅
- URL 주소를 변수로 사용하는 것
- URL의 일부를 변수로 지정하여 view 함수의 인자로 넘길 수 있음
- 즉, 변수 값에 따라 하나의 path()에 여러 페이지를 연결 시킬 수 있음