Model
데이터베이스를 제어하고, 관리하기 위한 영역을 말한다.
models.py에 데이터베이스 테이블을 class로 관리한다.
각 모델 class 1개 당 1개의 테이블이 서로 매핑된다.
migration 파일로 데이터베이스 DDL을 제어한다.
Django라는 식당이 있으면, 재료의 역할을 하는 것을 말한다.
Model - 자주 쓰이는 제약조건
post 테이블의 레코드를 id 오름차순으로 25개를 가져올 경우
SELECT * FROM "post"
ORDER BY id ASC
LIMIT 25
Post.objects.all().order_by('id')[0:25]
post 테이블에 레코드 삽입
INSERT INTO "post"
(title, content)
VALUES
("안녕","내용입니다.")
Post(
title="안녕",
content="내용입니다"
).save()
Django의 Model과 ORM을 통해 기존의 데이터베이스 형식과 비슷하면서도 대체하는 방법에 대해서 학습했다.
SQL의 경우에는 Insert into와 같이 모든 명령을 함께 앞에 입력해서 적용해야만 하지만, ORM의 경우에는 어떤 테이블에 넣을 것인지를 입력하고 save와 함께 적용하면 된다는 큰 차이점이 있었다.
앞으로 Django를 잘 활용하기 위해 ORM에 대한 추가적인 공부가 더 필요해보인다.