Intro
이번 시간에는 Django에서의 View 작성과 URL Mapping 방법에 대해 알아보겠습니다.
Django APP 생성
아래의 명령어를 실행하여 Django APP을 생성해줍니다.
python manage.py startapp app_name
전 app_name 대신 reviews라는 이름으로 생성하겠습니다.
python manage.py startapp reviews
명령어를 입력하고 잠시 기다린 후 아래와 같이 reviews라는 폴더가 생성되면 성공입니다.
View 작성
이제 APP에 HTTP 요청에 응답하기 위한 view를 작성해야 합니다.
생성한 APP 패키지의 views.py를 열어줍니다. 초기의 views.py는 다음과 같습니다.
views.py
from django.shortcuts import render
views.py에 아래의 함수와 import를 추가하여 View를 작성합니다.
이제 클라이언트의 요청으로 인해 아래의 함수가 호출될 시 HTTP로 "Hello, world!"라는 문자열을 응답해주게 됩니다.
from django.http import HttpResponse
def index(request):
return HttpResponse("<h1>Hello, world!</h1>")
views.py
from django.http import HttpResponse
from django.shortcuts import render
def index(request):
return HttpResponse("<h1>Hello, world!</h1>")
URL Mapping
이제 위에서 작성한 View를 URL에 매핑해줍니다.
프로젝트 폴더의 urls.py를 열어줍니다. 초기의 urls.py는 다음과 같습니다.
urls.py
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]
urls.py의 urlpatterns 리스트 내부에 아래의 값을 추가해줍니다.
아래의 코드를 추가하기 위해 reviews 패키지를 import 해줘야 합니다.
path('index/', reviews.views.index),
위의 코드는 사용자가 'index' URL로 접근할 시 reviews APP의 views.py 내부에 있는 index 함수를 호출하고,
함수의 반환값을 응답하도록 Mapping 해줍니다.
※ URL 매핑 시 /index/ 로 설정하면 안됩니다. /index/ 로 설정할 경우 localhost:8000//index와 같이 슬래시를 두번 써야 합니다.
urls.py
from django.contrib import admin
from django.urls import path
import reviews.views
urlpatterns = [
path('admin/', admin.site.urls),
path('index/', reviews.views.index),
]
결과 확인
서버를 재시작하고 http://localhost:8000/index에 접근하면 아래와 같이 Hello, world!가 뜨는것을 확인할 수 있습니다.
질문이나 개선사항은 언제든지 댓글로 남겨주세요.
이상으로 포스팅을 마치겠습니다.
'Study > Django' 카테고리의 다른 글
[Django] 6. Model 작성 및 마이그레이션 (0) | 2021.11.17 |
---|---|
[Django] 5. 템플릿 설정 및 렌더링 (0) | 2021.11.16 |
[Django] 4. URL GET 파라미터 값 획득하기 (0) | 2021.11.16 |
[Django] 2. Django 프로젝트 구성 (0) | 2021.11.16 |
[Django] 1. 개발환경 구축 및 프로젝트 생성 (0) | 2021.11.16 |