안녕하세요. 메타클라우드 입니다. 😎
패스트캠퍼스 챌린지 11일차 블로그 학습 정리 포스팅입니다.
학습 기록
금번 포스팅은 백엔드 실습을 위해 Django 서버를 실행한 뒤 튜토리얼 실습을 추가로 진행합니다. 패스트캠퍼스 11일차 수강 인증샷 입니다.
1. 설문조사 앱 만들기
- 아래 Django 튜토리얼 페이지 중 "설문조사 앱 만들기" 페이지의 내용을 실습합니다.
https://docs.djangoproject.com/ko/3.2/intro/tutorial01/#creating-the-polls-app
- 10일차 수강을 통해 설문조사 앱을 만들기 위한 환경(프로젝트)이 설치되었습니다. mysite안에는 각 어플리케이션들은 다음과 같은 관례로 Python 패키지가 구성됩니다. Django 는 앱(app) 의 기본 디렉토리 구조를 자동으로 생성할 수 있는 도구를 제공하기 때문에, 코드에만 더욱 집중할 수 있습니다.
- 설문조사 앱을 생성하기 위해 manage.py 가 존재하는 디렉토리에서 아래 명령어를 입력합니다. polls는 디렉토리 명입니다.
python manage.py startapp polls
- mysite 디렉토리 안에 polls 라는 디렉토리가 새로 생성됐습니다. polls 디렉토리 안에 py 파일들을 vscode로 살펴보겠습니다.
- admin.py 파일은 admin을 관리하는 파이썬 파일이고, models.py는 데이터베이스라고 생각하면 됩니다. 그리고 views.py는 실제로 어떤 사용자가 버튼을 클릭할때 그 뒤의 로직들이 있을텐데 그것과 관련된 내용입니다.
- 뷰 작성하기
뷰를 작성하기 위해 polls/view.py 파일을 vscode로 열어서 아래와 같은 파이썬 코드를 입력합니다.
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
그 다음에 urls.py를 polls 디렉토리 안에 추가하고 아래 파이썬 코드를 작성합니다.
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
다음 단계는, 최상위 URLconf 에서 polls.urls 모듈을 바라보게 설정합니다. mysite/urls.py 파일을 열고, django.urls.include를 import 하고, urlpatterns 리스트에 include() 함수를 다음과 같이 추가합니다.
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('polls/', include('polls.urls')),
path('admin/', admin.site.urls),
]
이렇게 변경하고 manage.py 파일을 실행하여 설문조사 앱을 확인합니다. 아래 명령어를 통해 실행하고 브라우저로 http://127.0.0.1:8000 경로에 접속합니다.
python manage.py runserver
그러면 아래와 같이 에러가 발생하는데, 브라우저 주소의 경로를 다시 http://127.0.0.1:8000/polls 변경하고 다시 접속하면 정상적으로 접속됩니다.
/polls 경로를 입력하게 되면 mysite/urls.py 에 아까 추가로 입력한 행 때문에 polls/urls.py가 실행되는 것입니다. 그리고 polls/urls.py 안에 views.py 파일을 호출하고 views.py를 확인해보면 아래와 같이 Hello 구문이 작성되어 있고 응답으로 주도록 되어 있습니다.
이번에는 polls 디렉토리 아래에 test 디렉토리를 추가하여 url의 경로를 polls/test 로 접속해보겠습니다. 먼저 polls/urls.py에서 아래와 같이 파이썬 코드를 작성합니다.
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
path('test/', views.test, name='index'),
]
그리고 polls/views.py 파일을 아래 파이썬 코드로 작성하고 브라우저에서 http://127.0.0.1/polls/test 로 접속하면 아래와 같이 나옵니다.
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
def test(request):
return HttpResponse("Hello, world. You're at the test index.")
test 디렉토리의 내용이 브라우저로 출력됐습니다.
패스트캠퍼스 챌린지 11일차 포스팅을 여기서 마치며, 다음 포스팅에서는 백엔드 Django 강의를 추가로 듣고 실습내용을 정리하겠습니다.
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'DevOps > Fast Campus' 카테고리의 다른 글
[패스트캠퍼스 챌린지 13일차] - 백엔드 Django 기초 1 (0) | 2021.11.13 |
---|---|
[패스트캠퍼스 챌린지 12일차] - 백엔드 Django 4 (0) | 2021.11.12 |
[패스트캠퍼스 챌린지 10일차] - 백엔드 Django 2 (0) | 2021.11.10 |
[패스트캠퍼스 챌린지 09일차] - 백엔드 Django 1 (0) | 2021.11.09 |
[패스트캠퍼스 챌린지 08일차] - 서비스 설계 방법 (0) | 2021.11.08 |