1. Template 분리
- Template분리란 MTV 분리에서 나오는 개념으로 다음과 같은 사유로 분리되어 다뤄짐
- 웹 디자이너가 DB의 내용을 실수로 삭제하거나 변결할 가능성이 있음
- 에러가 발생했을때 모든 요소가 엉켜있으면 해결하는 시간이 오래걸림 - 잠깐! MTV란? Model (DB) / Template (Front) / View (데이터처리 및 Programming) 를 말함
- Template을 완전히 분리를 해줘야 사이트 관리에 용이하다. 프로젝트 폴더 내부에 html또는 css가 여기저기 흩어져있을때 관리가 매우 힘들어지며, Front와 공동작업시에 매우 불편한 요소로 작용 함.
- 따라서 따로 폴더로 관리하는게 훨씬 깔끔하며, 이를 위해 settings.py에 'DIRS'를 수정해줘야 함.
- 'DIRS': [BASE_DIR/'template'] → Template과 관련된 설정들이 있는 디렉토리를 명시해 줌.
- Template안에는 App마다 폴더를 따로 생성하여, 각 폴더에는 해당 App에 대한 html파일만 존재하도록 해줌
※ 차후 App서비스 중단시 해당폴더면 삭제해주면 깔끔해짐
2. HTML 파일로 응답(Response) 날리기
- Render: HTML파일로 response를 줌. Rendering이란 이러한 파일을 화면에 뿌리는 과정을 말함.
- 각 App의 Views 에서 요청(request) 함수처리시 return으로 응답(response)
- render (request, HTML문서)
from django.shortcuts import render, redirect
def index(request) :
return render(request, "acc/index.html")
3. HTTP Protocol이해와 장고의 Request-Response 처리과정
- 웹서버와 클라이언트는 요청과 응답의 순환 과정으로 이루어짐
- 장고에서 이를 처리하는 과정은 아래 우측그림과 같음
- 출처: https://learnbatta.com/course/django/understanding-request-response-lifecycle-in-django/
'웹개발 > 장고 (Django)' 카테고리의 다른 글
#6_Admin 사이트 테이블 등록, 관리자 계정 생성, HTML데이터 전달 (0) | 2022.06.25 |
---|---|
#5_Model(DB) (0) | 2022.06.25 |
#4_HTML 기초 (0) | 2022.06.25 |
#2_기본 구조 이해(URL, Path, View) (0) | 2022.06.24 |
#1_가상환경 설치 및 서버 구동 (0) | 2022.06.20 |