Python으로 만들어진 Web framework
Model : 데이터베이스 테이블 정의 (public 함수로 이루어짐)
View : 로직 처리 (Model로부터 데이터를 가져옴)
Template : 사용자가 보게 될 화면의 모습을 정의
장점 - 사용자 인터페이스로부터 비즈니스를 분리해서
서로 영향 없이 고칠 수 있게 해주는 애플리케이션
(2세대에서 3세대로 넘어오면서 나뉘어짐)
URLconf : 카테고리화
View : Class > Def 단위로 나눠서 설계
Model : ERD를 Model에 입력
(Django에서는 ORM을 도와줌 (MySQL과 Model를 맵핑)
python manage.py startapp "앱 이름"
(.html 파일 업로드)
(project/urls.py와 app/urls.py)
project 디렉토리에 있는 urls.py에는 include()에 해당 app urls를 적는다.
app 디렉토리에 있는 urls.py는 해당 app의 view로 연결해준다.
class를 저장하고 필드 정보 및 길이 나타내기
(필드값 첫 글자 및 띄어쓸 때 대문자)
Migration에 앞서 project/setting.py에 앞서 app명을 추가한다.
(필요없는 app의 경우 #로 주석처리)
makemigrations로 project/migrations에 .py가 생기는데
migration시 DB에 데이터가 어떻게 정리될지 정의한 파일이다.
python manage.py makemigrations
migrate할 경우, 해당 파일이 적용 된다.
python manage.py migrate
git을 배우면서 makemigration -> migrate 의 과정이
git commit > push의 과정과 비슷하다고 생각했다.