Django 레스토랑
손님 - 홀 직원 : 주문과 서빙 관계(요리)
홀 직원 - 요리사 : 담당 요리사에게 전달, 홀직원에게 전달
요리사 - 재료 or 그릇 : 재료 선정 및 가공 그릇에 담기(요리도구)
Django의 특징(MVT)
Model : 데이터베이스 정의 및 제어
View - URLS - User : 로직 정의
Template : UI 정의
Django의 프로젝트 구성
Project
|- ProjectName
| |- Settings.py //각종 전역설정(데이터베이스, 인증, 권한)
보안, 시간대, 언어...)
| | - urls.py //전역 URL 설정
| | - wsig.py //Web Server Gateway Interface(웹)
서버의 진입점)
|- manage.py //Django 관리 스크립트
|- templates //Template 폴더(html)
|- static //정적 파일 폴더(img, js, css...)
------------------App------------------------------
|- AppName //앱
| |- migrations //migration 폴더(DB Table 관리 파일)
| |- models.py //모델(DB, Table 정의)
| |- views.py //로직
manage.py
Django 프로젝트 관리를 위한 스크립트
본격적으로 Django에 대한 구성 및 특징을 학습하면서 MVT 패턴을 인상깊게 봤다.
자바는 Spring을 주로 사용하다보니 MVC 패턴을 주로 사용하는데 컨트롤러가 아닌 템플릿 구조를 사용하는 차이가 있는 것이 신기했다.
또한, 코드를 적더라도 계정에 대한 관리는 신경쓰지 못하고 있었는데, 장고에서는 계정 관리 부분도 주요 기능에 속하는 것을 보고 정확히 어떤 계정을 관리하는 것인지에 대해 궁금해졌다.