[django] 프로젝트 생성, 개발 서버 구동하고 접속하기
프로젝트 생성은 했다만 우리가 만든 개발 서버는 아직 아무 기능도 할 수 없다
우리가 개발 언어를 배울 때 제일 먼저 해보는 것이 있지 않은가?
그렇다 이번엔 Hello world를 출력해볼 것이다
앞서 우리가 startproject config .로 폴더 내에 프로젝트 파일을 생성하고 나면 디렉토리 구성은 아래와 같았다
앞선 글에서 장고는 많은 기능이 있고 우리는 그걸 입맛에 맞게 사용하면 된다고 했다
그럼 일단 뭔가 하기를 위해선 앱이 필요할 것 아닌가? 앱을 만들어보자
터미널을 열고 mysite 로 이동한 후 다음과 같은 명령을 입력한다
django-admin startapp 앱 이름
그럼 아래와 같이 새로운 폴더와 파일이 생성된다
당장 하나하나가 무슨 일을 하는지는 알 필요 없고
다시 서버를 열고 'http://localhost:8000/앱 이름'로 접속하면
404에러가 뜬다
당황하지 말고 어떤 오류인지 잘 읽어보면 요청한 /앱 이름 의 URL에 해당되는 매핑이 없다고 한다
없으면 추가하면 된다 그럼 어디에 추가해야될지 생각해보자
url 에 매핑을 추가해줘야 하는 것이 해결책인데 그럼 url과 관련된 파일을 찾으면 된다
config 폴더에 urls.py 에 들어가면 아래처럼 되어 있을텐데
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]
아래처럼 바꿔주자
from django.contrib import admin
from django.urls import path
from app_1 import views # app_1에서 views를 불러온다
urlpatterns = [
path('admin/', admin.site.urls),
path('app_1/', views.index), # app_1/ URL이 요청되면 views 파일의 index 함수를 호출하라
]
추가된 내용은 views 에 관련된 내용이지만 우린 아직 views는 들여다 본적도 없으니
어서 views를 수정해보자 생성한 app_1 폴더의 views 파일을 열면 다음과 같이 되어있는데
from django.shortcuts import render
# Create your views here.
주석은 지우고 아래와 같이 내용을 추가하자
from django.shortcuts import render
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello world")
다시 서버를 열고 'http://localhost:8000/앱 이름' 으로 접속하면 Hello world가 출력되는 것을 확인할 수 있다
'dev > django' 카테고리의 다른 글
[django] models - modeling, migrate (0) | 2022.02.27 |
---|---|
[django] Model - 숫자관련 Field (0) | 2022.02.24 |
[django] url 분리 (0) | 2022.02.14 |
[django] 프로젝트 생성, 개발 서버 구동하고 접속하기 (0) | 2022.02.10 |
[django] 프레임워크란? (0) | 2022.02.09 |