Model

: 데이터베이스와 파이썬 클래스(객체)로 추상화된 형태로 상호작용

Model class

: DB의 테이블을 정의하고 데이터를 조작할 수 있는 기능들을 제공

⇒ Model class는 데이터베이스 테이블 구조를 설계하는 blueprint 역할을 함. 어떤 데이터를 저장할지, 그 데이터의 형태는 어떠할지 (타입, 길이 등)를 python 코드로 명확히 정의함

Model Field

: DB 테이블의 필드(열) 정의. 데이터 타입(Field types) 및 제약 조건(Field options) 명시

⇒ Django는 이러한 필드 정의를 바탕으로 데이터베이스의 칼럼을 자동으로 생성하고, 데이터 입력 시 유효성 검사 등 필요한 기능을 제공함. 정확한 필드 정의는 애플리케이션의 안정성을 높이는 데 필수적임

image.png

1. Field types

: 데이터베이스에 저장될 데이터의 종류를 정의 (models 모듈의 클래스로 정의되어 있음)

2. Field options

: 필드의 “동작”과 “제약 조건”을 정의