ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • part 1. 요청과 응답
    Django 2022. 6. 28. 13:48

    시작하기 전에 먼저 코드를 작성할 수 있는 에디터 툴을 설치해 줍니다.

    https://code.visualstudio.com/Download

     

    Download Visual Studio Code - Mac, Linux, Windows

    Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. Download Visual Studio Code to experience a redefined code editor, optimized for building and debugging modern web and cloud applications.

    code.visualstudio.com

     

     

     

     

    이 튜토리얼을 통해, 간단한 설문조사(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 part1

    '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
Designed by Tistory.