ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Django, 웹개발] Django 웹개발 순서
    파이썬, Python/[Web] 웹개발 - 장고, Django 2020. 2. 24. 20:24
    728x90

     

    기본전제
     - 파이썬 설치 & Django 설치완료
     - 가상환경 구축

    Django 는 우측 그림과 같이 Architecture 구성되어있음

    웹브라우저에서 주소를 치면 (url입력)

    어떠한 주소를 쳤는지 URL dispatcher에서 해당 주소의

    view내 정의한 함수로 연결됨.

    view에서 정의한 함수에서 model에 정의한 변수들을

    불러와서 응용함.

     

    Model 은 데이터베이스에 어떻게 넣어줄지를 정함

    (db 모델이라고 생각하면 쉬움)

     

     

     

    아래는 Folder의 Structure임.

    Django Folder Structure

     


    1. 터미널에서 python manage.py startproject project명

    2. settings.py 열어서 code 수정

    ALLOWED_HOST = ['127.0.0.1']
    
    LANGUAGE_CODE = 'ko'
    
    TIME_ZONE = 'Asia/Seoul'
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'todo_db',
            'USER': 'root',
            'PASSWORD' : 'minsu356',
            'HOST' : 'localhost',
            'PORT' : '3306',
            'OPTIONS': {
                'init_command': 'SET sql_mode="STRICT_TRANS_TABLES"'}
        }
    }

     

    3. 터미널에서 python manage.py migrate

    4. 터미널에서 python manage.py startapp App명 

       * App명은 Project명과 다르게해야 헤깔리지 않음.

    5. 여기까지하면 아래 그림과 같이 형성됨(나는 Project명을 todo, App명을 tasks로 했음)

    Hierarchy

    6. App 폴더 내 urls.py (sub)를 생성하고 최초 웹페이지 접속 시 나타날 화면 구성

    from django.urls import path
    from . import views
    
    urlpatterns = [
         path('', views.index)
    ]

    7. Project 폴더 내 ulrs.py (Main) 에 sub 경로를 추가시켜 항상 sub에서 동작하도록 구성

    from django.contrib import admin
    from django.urls import path, include
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', include('tasks.urls'))
    ]

     

    8. views.py 파일 내 위에서 불러온 index 함수를 정의해서 웹페이지 접속(요청)시 띄울 내용을 기재

    from django.shortcuts import render
    from django.http import HttpResponse
    
    # Create your views here.
    
    def index(request):
        return HttpResponse('hello world!')

     

    반응형
Designed by Tistory.