728x90
Spring을 공부할 때는 MVC(Model - View - Controller) 디자인 패턴을 사용한다고 배웠다.
하지만 장고는 이런 개념을 MTV 패턴이라고 부른다.
▶MTV 디자인 패턴
Model
데이터베이스에 저장되는 데이터를 의미한다.
데이터 관리, 데이터베이스와 연결 및 실행이 주된 역할이다.
장고는 SQL을 몰라도 DB 작업을 가능하게 해주는 ORM을 제공한다.
ORM (Object-Relational Mapping)
SQL이라는 언어 대신 데이터베이스를 쉽게 연결해 주는 방법이다.
models.py 파일에 class를 만들고 수정하면서 작업한다.
Template
사용자에게 보이는 데이터를 출력하는 역할을 한다.
html과 같은 페이지이다.
urls.py라는 url 패턴에 따라 특정 함수를 불러오는 동작에서 Template를 설정해 사용자에게 보여준다.
View
컨트롤러의 역할을 한다.
웹 요청을 받고 전달받은 데이터들을 해당 애플리케이션의 로직으로 가공해 결과를 템플릿으로 보낸다.
views.py 파일에서 코드를 작성해 작업한다.
728x90
▶장고 실행 흐름
4, 5, 6, 7번은 필요에 의해 선택적으로 진행한다.
URLconf (URL 설계)
URL은 view와 templat을 매핑해 주는 역할을 한다.
이런 작업을 URLconf라고 한다.
▶정리
Model : 데이터 저장 형태를 어떻게 할지 설정
Template : 유저에게 보이는 화면을 작성 및 수정
View : 데이터를 처리해서 가공
URLconf : 가공한 데이터를 유저가 보는 화면으로 전송
728x90
'Back-End' 카테고리의 다른 글
[Django] 마이그레이션 초기화 (0) | 2023.07.18 |
---|---|
[Django] 모델(Model), 커스텀 모델 (1) | 2023.05.07 |
[Django] URLs와 Views (App 생성/등록하기) (2) | 2023.05.02 |
[Django] SECRET_KEY 암호화 (github commit시 주의) (0) | 2023.05.02 |
[Django] VScode 장고 시작 (가상환경 venv) (0) | 2023.05.02 |