Django | 장고 MVT(Model-View-Template) 패턴

2023. 6. 9. 16:43·BackEnd/Django

장고의 MVT 패턴은 일반적인 웹 프로그래밍의 MVC 패턴의 개념과 비슷하다.

MVC 패턴은 Model-View-Controller로 데이터, 사용자 인터페이스, 데이터를 처리하는 로직을 구분해서 한 요소가 다른 요소들에 영향을 주지 않도록 설계하는 방식을 의미한다.

 

파이썬의 장고 프레임워크는 MVC가 아닌 MVT 패턴으로 Model-View-Template이다.

  • 모델(Model): 데이터베이스에 저장되는 데이터
  • 뷰(View): 프로그램 로직이 동작해 데이터를 가져오고 처리한 결과를 템플릿에 전달
  • 템플릿(Template): 사용자에게 보이는 UI 부분

 

장고 MVT 패턴은 다음과 같은 과정으로 작동한다.

  1. 유저가 ~~~.com 이라는 이름의 서버를 요청한다.
  2. urls.py에서 매핑된 뷰(view)를 호출한다.
  3. 호출된 뷰는 models.py에서 모델(model)을 찾는다.
  4. 정의한 모델에 맞게 데이터베이스(DB)에서 필요한 데이터를 가져온다.
  5. 뷰는 지정된 템플릿(template)을 렌더링 하고 가져온 데이터를 템플릿에 채워 최종 HTML 파일을 생성한다.
  6. 최종 파일을 반환하여 유저의 요청에 응답한다.

 

MVT 패턴을 따라 개발하면 구성요소가 분리되어 프론트엔드 개발자, 백엔드 개발자는 각자의 역할에 충실할 수 있으며, 장고 앱의 코드 재사용성, 보다 쉬운 테스트 및 향상된 유지 관리가 가능하다.

저작자표시 (새창열림)
'BackEnd/Django' 카테고리의 다른 글
  • Django | 장고 셸 플러스(shell plus) 사용하기
  • Django | 테스트 주도 개발(TDD)
  • Django | 장고 한국 시간 설정하기
  • Django | 장고 앱 생성하기(startapp)
dduniverse
dduniverse
  • dduniverse
    dduniverse
    dduniverse
  • 전체
    오늘
    어제
    • 분류 전체보기 (245)
      • Algorithm (123)
        • 알고리즘 이론 (8)
        • 백준 (19)
        • 프로그래머스 (83)
        • 구름 알고리즘 먼데이 챌린지 (13)
      • 빅데이터분석기사 (10)
        • 통계 (4)
        • 실기 (6)
      • KT에이블스쿨 (26)
      • FrontEnd (11)
        • React (5)
        • 기타 (6)
      • BackEnd (18)
        • Django (15)
        • Spring (3)
      • DS & ML (11)
        • Machine Learning (9)
        • Kaggle (2)
      • TIL (46)
        • python (22)
        • javascript (3)
        • 오류해결 (10)
        • 기타 (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 관리
    • 글쓰기
  • 링크

  • 인기 글

  • hELLO· Designed By정상우.v4.10.0
dduniverse
Django | 장고 MVT(Model-View-Template) 패턴
상단으로

티스토리툴바