docs.djangoproject.com/ko/3.1/intro/tutorial01/
프로젝트 만들기
예제) 간단한 설문조사(Polls) 어플리케이션을 만드는 과정을 따라해 보겠습니다.
두 파트로 구성되어 있습니다.
* 사람들이 설문 내용을 보고 직접 투표할 수 있는 개방된 사이트
* 관리자가 설문을 추가, 변경, 삭제할 수 있는 관리용 사이트
팁 : 리눅스 명령어와 윈도우즈 명령어 선택
이 테스트를 하기 위해 프로젝트의 가상 환경이 활성화 되어 있어야 합니다. (activate.bat)
cd를 이용하여 프로젝트를 저장 할 폴더로 이동
"django-admin startproject mysite" -> 옮겨간 폴더에 mysite 라는 프로젝트를 생성해라.
이 중에서 urls.py 와 settingspy 파일을 눈여겨 보아야 합니다.
Django 의 흐름
개발 서버
"py manage.py runserver" 엔터 -> 서버를 구동하고 Django가 제대로 작동하는지 확인한다.
http://127.0.0.1:8000 으로 확인 가능 합니다.
이 때 포트를 변경하고자 하는 경우
"py manage.py runserver 8080" 이렇게 변경 할 수 있습니다.
설문조사 앱 만들기
프로젝트와 앱의 차이점은 무엇입니까?
앱은 웹 로그 시스템, 공개 기록 데이터베이스 또는 소규모 설문 조사 앱과 같은(특정) 작업을 수행하는 웹 애플리케이션입니다.
프로젝트는 특정 웹 사이트에 대한 구성 및 앱 모음입니다.
프로젝트에는 여러 앱이 포함될 수 있습니다. 앱은 여러 프로젝트에있을 수 있습니다.
특정 기능을 하는 모듈을 앱이라고 합니다. 이러한 앱들을 이용해서 하나의 프로젝트를 만들게 됩니다.
앱을 생성해 봅시다.
"py manage.py startapp polls" 엔터 -> polls라는 앱을 만듭니다. (예제 : 투표 담당)
첫번째 뷰 작성하기
/polls/views.py 화일에 아래와 같이 코딩
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
views 코드를 호출하기 위해 urls.py 를 생성해서 views와 연결을 해 줘야 합니다.
urls.py 에 아래와 같이 코딩
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')), # include()를 이용하여 polls의 urls.py 와 연결
path('admin/', admin.site.urls),
]
이렇게 하면 127.0.0.1/polls/ 의 polls.urls (/mysite/urls.py)와 연결을 해 줍니다.
그리고 /polls/urls.py 에서는 views.index 와 연결을 해 줍니다.
그리고 /polls/views.py 의 index() 는 수행에 맞는 결과 값을 클라이언트에게 전달을 해줍니다.
정상적으로 연결이 됐는지 확인하기
"py manage.py runserver" 엔터
http://127.0.0.1:8000/polls/ 또는 http://localhost:8000/polls/ 연결 하면 아래와 같은 결과가 출력 된다.
'프로그램 > 파이썬(Python)' 카테고리의 다른 글
디장고 데이타베이스 연결 (Connect Django database) (0) | 2021.01.15 |
---|---|
디장고 환경 설정 (Setting Django environment) (0) | 2021.01.14 |
여러 사진 합치기 파이썬 소스 연습용 (Multiple photo combinations Python source) (1) | 2021.01.14 |
파이썬 GUI 샘플 소스 (Python GUI sample source) (0) | 2021.01.14 |
Hello Python 파이썬 기본 명령어 소스 (Hello python) (0) | 2021.01.14 |