💡 AI 인사이트

🤖 AI가 여기에 결과를 출력합니다...

댓글 커뮤니티

쿠팡이벤트

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

검색

    로딩 중이에요... 🐣

    [코담] 웹개발·실전 프로젝트·AI까지, 파이썬·장고의 모든것을 담아낸 강의와 개발 노트

    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는 다음과 같은 방식으로 요청을 처리합니다:

    1. 클라이언트 요청: 사용자가 브라우저를 통해 URL 요청
    2. URLConf 처리: urls.py가 요청을 분석하여 적절한 view로 연결
    3. View 실행: views.py의 함수 또는 클래스가 실행되어 로직 처리
    4. 템플릿 렌더링: 결과를 HTML 템플릿에 전달하여 응답 생성
    5. 응답 반환: 생성된 응답이 사용자에게 전달됨

    이 흐름은 Django의 핵심이며, 반복 학습을 통해 자연스럽게 익힐 수 있습니다.


    5. Django 앱 생성

    Django 프로젝트 내부에 기능 단위로 나눠 구성하는 앱을 생성합니다.

    예: 투표 기능을 담당할 앱 생성

    python manage.py startapp polls
    

    생성된 polls 디렉토리 구조:

    • views.py: 사용자 요청 처리 로직
    • models.py: 데이터베이스 모델 정의
    • admin.py: 관리자 페이지 설정
    • tests.py: 테스트 케이스 작성
    • apps.py: 앱 설정 정보
    • migrations/: DB 스키마 변경 기록

    앱 생성 후, 반드시 settings.pyINSTALLED_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를 이용한 형상관리 기초를 학습합니다.

    감사합니다.

    TOP
    preload preload