-
part 1. 요청과 응답Django 2022. 6. 28. 13:48
시작하기 전에 먼저 코드를 작성할 수 있는 에디터 툴을 설치해 줍니다.
https://code.visualstudio.com/Download
이 튜토리얼을 통해, 간단한 설문조사(Polls) 어플리케이션을 만드는 과정을 따라 해 보겠습니다.
두 파트로 구성되어 있습니다.
- 사람들이 설문 내용을 보고 직접 투표할 수 있는 개방된 사이트
- 관리자가 설문을 추가, 변경, 삭제할 수 있는 관리용 사이트
기존에 설치한 파이썬과 장고 라이브러리가 잘 설치 되었는지
py -m django --version 명령어를 이용하여 확인해 보겠습니다.
저는 기존에 가상환경내 개발환경을 구성후 장고를 설치했기 때문에
가상환경을 구동(cd myenv -> cd Scripts -> activate.bat)한 후 입력해주었습니다!
4.0.5 버전의 장고가 설치되어 있네요!
프로젝트 만들기
원하는 디렉토리로 이동 후
django-admin startproject mysite를 입력하여
'mysite'라는 프로젝트를 생성해 줍니다.
기존에 설치한 에디터 툴에 방금 생성한 프로젝트를 추가합니다.
파일들에 대한 설명입니다. 간단히 읽고 넘어갑니다 !
파일 설명 manage.py Django 프로젝트와 다양한 방법으로 상호작용 하는 커맨드라인의 유틸리티 입니다. mysite/__init__.py Python으로 하여금 이 디렉토리를 패키지처럼 다루라고 알려주는 용도의 단순한 빈 파일입니다. Python 초심자라면, Python 공식 홈페이지의 패키지를 읽어보세요. mysite/settings.py 현재 Django 프로젝트의 환경 및 구성을 저장합니다. mysite/urls.py 현재 Django project 의 URL 선언을 저장합니다. Django 로 작성된 사이트의 “목차” 라고 할 수 있습니다. mysite/asgi.py 현재 프로젝트를 서비스하기 위한 ASGI-호환 웹 서버의 진입점입니다. mysite/wsgi.py 현재 프로젝트를 서비스하기 위한 WSGI 호환 웹 서버의 진입점입니다. - mysite/ 디렉토리 내부에는 프로젝트를 위한 실제 Python 패키지들이 저장됩니다. 이 디렉토리 내의 이름을 이용하여, (mysite.urls 와 같은 식으로) 프로젝트의 어디서나 Python 패키지들을 임포트할 수 있습니다.
개발 서버
py manage.py runsurver 명령어를 입력하여
서버를 구동하고 우리의 장고가 제대로 동작되는지 확인해 보도록 하겠습니다!
서버가 정상적으로 구동되었습니다 !
하단의 해당 주소로 접속하면 프로젝트가 동작하는 것을 확인할 수 있습니다.
(현재 구동중인 웹서버는 순수 python으로 작성된 웹서버이기 때문에 오로지 개발 목적으로만 사용해야 합니다!)
설문조사 앱 만들기
프로젝트와 앱은 무엇이 다를까요?
프로젝트는 'mysite'와 같은 앱의 묶음이고
앱은 블로그 시스템, 공개 기록 데이터베이스 또는 소규모 의견조사 앱과 같은
특정한 기능을 수행하는 웹 어플리케이션을 말합니다.
py manage.py startapp polls를 입력하여 앱을 생성합니다.
에디터 툴을 보면 'polls'라는 앱이 생성된 것을 확인할 수 있습니다.
첫 번째 뷰 작성하기
“polls/view.py”를 열어 다음과 같은 파이썬 코드를 입력합니다
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world.")작성한 view를 호출하기 위해서 url 코드를 작성하고 view와 연결해주어야 합니다.
polls에 url파일이 없기때문에 생성후 해당 코드를 입력해줍니다.from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]최상위 URLconf에 방금만든 polls앱 urls을 연결합니다.
(최상위 URLconf는 mysite -> urls 내부에 있습니다.)
연결을 위해 다음 코드를 작성합니다.from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('polls/', include('polls.urls')),
path('admin/', admin.site.urls),
]include 함수를 이용해 polls앱 urls을 참조하도록 하였습니다.
▶ include() 함수는 다른 URLconf들을 참조할 수 있도록 도와줍니다. Django가 함수 include()를 만나게 되면, URL의 그 시점까지 일치하는 부분을 잘라내고, 남은 문자열 부분을 후속 처리를 위해 include 된 URLconf로 전달합니다.
프로젝트가 이상없이 동작을 하는지 서버를 구동하여 확인해 보겠습니다!
py manage.py runsurver
주소 뒤에 polls를 입력해 주세요.
(http://127.0.01:8000/polls/)
우리의 장고 어플리케이션이 정상적으로 동작한것을 확인할 수 있습니다!
출처 : django 웹 프로그래밍 강좌 (#1 Django app)(프로젝트 생성, app 생성, 서버 구동, django cycle)
'Django' 카테고리의 다른 글
Part 4 폼과 기본 뷰 (0) 2022.07.02 Part 3 뷰와 템플릿 (0) 2022.07.01 Part 2-2 관리자 페이지 (0) 2022.06.29 part 2-1 모델 (0) 2022.06.29 django 설치 및 가상환경 세팅하기 (0) 2022.06.27