동아리

[멋쟁이사자처럼] 장고 MTV패턴 (202204)

땅콩콩 2022. 4. 8. 01:00

저번주부터 멋사에서 장고를 배우고있다! MTV라는 장고의 디자인패턴을 배우면서 templates, views.py , urls.py가 각각 어떤 역할을 하는지 알아봤고, 이번주에는 작은 프로젝트(글자수세기 프로그램 등등,,)와 실습을 해볼 수 있었다. 솔직히 아직 감이 잘 안오긴하는데 그래도 실습해보는게 생각보다 재밌었다.

 

오늘은 장고ORM, admin을 실습하면서 sql이 없이 데이터베이스를 다루고, 기록된 정보의 CRUD도 장고bash에서 실습해볼 수 있었다!

장고의 MTV패턴

Model/ Template/ View의 약자로, 장고의 디자인 패턴이다.

model은 디비속에 저장되는 데이터들이 있는곳이고, template은 사용자에게 보여지는 부분을, view는 데이터를 원하는 방식으로 조작하는 처리를 하는 곳이다. 그리고 여기서 template과 view를 연결해주는것이 바로 url이다. (urls.py)

 

 

class와 테이블

models.py에 클래스 만들어주기

models.py에 클래스를 하나 만들어주면, 데이터베이스 테이블 하나가 생긴다.

이 클래스 안에 담긴 변수들 각각이 데이터베이스 테이블의 칼럼이 된다.

 

 

 

migration

models.py에서 변경사항이 있거나 추가 테이블이 있을경우 실행해줄 명령어이다.

python manage.py makemigrations
#변경사항을 감지하여 파일로 저장

python manage.py migrate
#그렇게 생성된 파일을 DB에 적용

 

 

 

Admin 유저를 만들어줘야 Admin에 접근이 가능하다.

admin.py에 모델 등록해주기

python manage.py createsuperuser
#Admin 유저 생성