로딩 중이에요... 🐣
02 프로젝트 생성, 앱생성,서버구동, Django 사이클 | ✅ 편저: 코담 운영자
Django 웹 프로그래밍 강좌 2강 - 프로젝트 생성, 앱 생성, 서버 구동, Django 사이클 (Django 5.2 기준)
이 강의는 Django 공식 문서의 2.2 튜토리얼 내용을 바탕으로 진행되며, Django 5.2 버전에 맞춰 코드를 업그레이드하여 설명합니다.
📚 공식문서 주소: https://docs.djangoproject.com/ko/5.2/intro/tutorial01/
1. 에디터 설정 (Visual Studio Code)
Django 개발을 위한 코드 편집기로 Visual Studio Code(VS Code)를 추천합니다.
- https://code.visualstudio.com 에서 설치 가능
- 설치 후 VS Code를 열고, 생성할 프로젝트 폴더를 열어 개발을 시작할 수 있도록 준비합니다.
- Python 확장팩과 Django 관련 확장도 설치해두면 개발에 도움이 됩니다.
2. Django 프로젝트 생성
가상환경이 활성화된 상태에서 아래 명령어로 Django 프로젝트를 생성합니다:
django-admin startproject mysite
mysite
는 프로젝트 이름이며 자유롭게 설정 가능- 해당 명령어 실행 시
mysite/
라는 디렉토리가 생성되며 프로젝트의 기본 구성이 포함됩니다.
주요 폴더/파일 설명
manage.py
: Django 프로젝트 관리 명령어 실행용 스크립트mysite/settings.py
: 전역 설정 파일 (데이터베이스, 앱 등록, 언어 등)mysite/urls.py
: 루트 URLConf, URL 라우팅의 시작점wsgi.py
/asgi.py
: 배포 환경을 위한 설정 (WSGI/ASGI 서버용)
3. Django 개발 서버 구동
다음 명령어로 Django 개발 서버를 실행합니다:
python manage.py runserver
정상적으로 실행되면 아래와 같은 메시지가 출력됩니다:
Starting development server at http://127.0.0.1:8000/
브라우저에서 해당 주소에 접속하면 Django 기본 환영 페이지가 표시됩니다.
이 서버는 로컬 개발용이며, 실제 배포 시에는 Nginx, Apache 같은 웹 서버를 사용해야 합니다.
4. Django 작동 흐름 (Request → URLConf → View → Template → Response)
Django는 다음과 같은 방식으로 요청을 처리합니다:
- 클라이언트 요청: 사용자가 브라우저를 통해 URL 요청
- URLConf 처리:
urls.py
가 요청을 분석하여 적절한 view로 연결 - View 실행:
views.py
의 함수 또는 클래스가 실행되어 로직 처리 - 템플릿 렌더링: 결과를 HTML 템플릿에 전달하여 응답 생성
- 응답 반환: 생성된 응답이 사용자에게 전달됨
이 흐름은 Django의 핵심이며, 반복 학습을 통해 자연스럽게 익힐 수 있습니다.
5. Django 앱 생성
Django 프로젝트 내부에 기능 단위로 나눠 구성하는 앱을 생성합니다.
예: 투표 기능을 담당할 앱 생성
python manage.py startapp polls
생성된 polls
디렉토리 구조:
views.py
: 사용자 요청 처리 로직models.py
: 데이터베이스 모델 정의admin.py
: 관리자 페이지 설정tests.py
: 테스트 케이스 작성apps.py
: 앱 설정 정보migrations/
: DB 스키마 변경 기록
앱 생성 후, 반드시
settings.py
의INSTALLED_APPS
에 등록해줘야 Django가 해당 앱을 인식합니다.
# mysite/settings.py
INSTALLED_APPS = [
...
'polls',
]
6. View 작성 및 URL 연결
1단계: View 작성 (polls/views.py
)
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
2단계: 앱 내부 URLConf 생성 (polls/urls.py
)
(해당 파일은 수동으로 생성해야 합니다)
from django.urls import path
from . import views
urlpatterns = [
path("", views.index, name="index"),
]
3단계: 프로젝트 URLConf에 앱 URL 포함 (mysite/urls.py
)
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path("polls/", include("polls.urls")),
path("admin/", admin.site.urls),
]
include()
함수는 앱의 URLConf를 프로젝트에 연결해주는 역할을 합니다.
7. 서버 실행 및 결과 확인
서버를 실행하고 아래 주소에 접속합니다:
http://127.0.0.1:8000/polls/
Hello, world. You're at the polls index.
라는 텍스트가 출력되면 정상적으로 라우팅과 뷰 연결이 완료된 것입니다.
마무리 요약
- VS Code 에디터 설치 및 사용법
- Django 프로젝트 및 앱 생성
- 개발 서버 실행과 Django 요청 흐름 이해
- URLConf와 뷰 연결을 통한 기본 라우팅 구조 확인
다음 강의 예고
3강에서는 Git과 GitHub를 이용한 형상관리 기초를 학습합니다.
감사합니다.