백엔드
Django에 대하여(9)_Model
데이터분석가 이채은
2024. 3. 30. 03:38
Django Model
Django Model은 DB의 테이블을 정의하고 데이터를 조작할 수 있는 기능들을 제공한다. 테이블 구조를 설계하는 청사진(blueprint)라고 한다.
# articles/models.py
class Article(models.Model)
title = models.CharField(max_length=10)
content = models.Textfield()
- django.db.models 모듈의 Model이라는 부모 클래스를 상속받습니다.
- Model은 model에 관련된 모든 코드가 이미 작성되어있는 클래스입니다. https://github.com/django/django/blob/main/django/db/models/base.py#L459
django/django/db/models/base.py at main · django/django
The Web framework for perfectionists with deadlines. - django/django
github.com
- 이것은 프레임워크의 이점으로 개발자는 가장 중요한 테이블 구조를 어떻게 설계할지에 대한 코드만 작성하도록 하기 기 위함입니다.
- 클래스 변수명으로 테이블의 각 "필드(열) 이름"을 나타냅니다
- model Field 클래스로 테이블 필드의 "데이터 타입"입니다.
- https://docs.djangoproject.com/en/4.2/ref/models/fields/
Django
The web framework for perfectionists with deadlines.
docs.djangoproject.com
- model Field 클래스의 키워드 인자 (필드 옵션)으로 테이블 필드의 "제약조건" 관련 설정입니다.
- https://docs.djangoproject.com/en/4.2/ref/models/fields/#field-options
Django
The web framework for perfectionists with deadlines.
docs.djangoproject.com
제약 조건
데이터가 올바르게 저장되고 관리되도록 하기 위한 규칙입니다. 숫자만 저장되도록 하기, 예를 들어 문자가 100자까지만 저장되도록 하기 등이 있습니다.