1. "web" 프로젝트 생성

[명령어]

pip install django

django-admin startproject [프로젝트 명]   //"web"이라는 프로젝트 생성

2. "main" APP만들기

먼저 만들어진 프로젝트 디렉토리로 이동 후 manage.py가 있는지 확인해야합니다.

위와 같이 생성한 프로젝트 내에 manage.py 파일이 존재한다면 아래 명령어를 통해 앱을 생성해 줍니다.

 

[명령어]

python manage.py startapp [app 명]  //"main"이라는 앱 생성

main이라는 앱이 생성된 것을 확인 할 수 있습니다.

 

3. settings.py 수정

먼저 "main"이라는 앱을 생성했기 때문에 web폴더의 settings.py클릭하여

아래와 같이 "INSTALLED_APPS" 부분에 "main"을 추가해주어야 합니다.

위처럼 "APP"을 추가합니다.

 

이제 "TEMPLATES" 부분에 html 파일을 관리할 디렉토리를 지정해 주어야 합니다.

 

먼저 os모듈을 import 합니다.

import os

"DIRS" 부분을 아래와 같이 수정해줍니다.

 

- 수정 전 -

 

- 수정 후 -

앞으로 모든 "html"파일은 "templates"디렉토리에서 관리하게 됩니다.

 

 

4. templates 디렉토리 생성 및 html 파일 생성

[html 소스]

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    테스트페이지.
</body>
</html>

 

4. urls.py 생성

[main/urls.py]

urls.py를 생성하여 아래와 같이 입력해줍니다.

URL에 main으로 시작하는 모든 요청은 main/urls.py의 내용과 비교하여 핸들링하게 됩니다.

"http://DOMAIN/main/"으로 들어오는 요청(defalut 페이지)은 index 함수에서 처리하게 됩니다.

만약 "http://DOMAIN/main/test/"경로로 요청이 들어왔다면 "path("test/", view.test)"이처럼 작성하여 test함수가 처리하도록 만들 수 있습니다.

 

[main/urls.py 소스]

from django.urls import path
from . import views


app_name = 'main'
urlpatterns = [

    path('', views.index),
]

 

5. main/view.py 수정

 

위처럼 views.py를 수정해줍니다.

 

[views.py 소스코드]

from django.shortcuts import render

def index(request):
    return render(request, 'main/test.html')

 

6. 변경사항 적용 및 테스트 페이지 접속

[변경사항 적용]

python manage.py makemigrations
python manage.py migrate

 

[웹서버 기동]

python manage.py runserver 8000

 

[홈페이지 접속]

 

8000번 포트로 정상적으로 접속되는 것을 확인 할 수 있습니다.

 

+ Recent posts