Django project-3

정경수·2022년 6월 11일
0

django는 model을 이용하여 DB를 처리하기 때문에 보통 DB에 data를 저장하고 조회하기 위해서 SQL 쿼리문을 작성해야 하지만 django의 model을 사용하면 그럴 필요가 없다.

py manage.py migrate

를 실행해주면 app들이 사용하는 테이블들이 생성이 된다.

django에서 project는 app들의 묶음이고, app은 특정한 기능을 수행하는 web application 이다.

django의 장점 중 하나가 테이블 작업을 위해 직접 쿼리문을 수행하지 않아도 된다고 앞에서도 말하였는데 django의 ORM을 사용하면 쿼리문을 몰라도 데이터 작업을 쉽게 할 수 있다.

ORM(Object Relational Mapping)을 사용하면 데이터베이스의 테이블을 모델화하여 사용하기 때문에 위에서 열거한 SQL방식의 단점이 모두 없어진다. ORM을 사용하면 개발자별로 독특한 쿼리문이 만들어질 수가 없고 또 쿼리를 잘못 작성할 가능성도 낮아진다. 그리고 데이터베이스 종류가 변경되더라도 쿼리문이 아닌 모델을 사용하기 때문에 프로그램을 수정할 필요가 없다.

model을 생성하거나 model에 변화가 있을 경우에는

python manage.py makemigrations 

명령어를 꼭 수행시켜줘야 한다.
makemigrations -> migrate 순서이다.
makemigrations 명령은 django가 테이블 작업을 수행하기 위한 작업파일을 생성하는 명령어
이고 실제 테이블 작업은 migrate 명령어를 통해 가능하다.

만약 No changes detected 라는 오류가 나온다면
settings.py -> INSTALLED_APPS에 우리가 만든 app을 등록해주어야 한다.

profile
장 : 장고를 한번 마스터해볼까 합니다 고 : Go

0개의 댓글