Python/Django
[Django] ORM 모델 클래스 선언하기 feat. Decriptor
Lee David
2022. 8. 11. 07:32
반응형
python class내에 변수 선언 방법 참조 링크
https://paciencia.tistory.com/87
Database에 접근하여 데이터를 CRUD하는 방법중에 Django에서는 ORM 모델 class를 활용합니다.
Django에서는 ORM class를 선언 할때에는 django.db의 models를 인자값으로 선언해주어야 합니다.
from django.db import models
# ORM 모델 class
class Client(models.Model):
name = models.CharField(max_length=100)
phone = models.CharField(max_length=11)
# ------------------------------------------ 비교선
# 일반 class 선언시에 위와 동일한 코드
class Client:
def __init__(self, name: str, phone: str):
self.name = name
self.phone = phone
코드를 보면 name과 phone의 경우 class 변수로 오해 할 수도 있지만 models.Model을 통해 ORM class 로 활용되는 경우 선언되는 변수에 models를 가진 Decriptor 객체이며 해당 변수들은 instance 변수로 분류 됩니다.
반응형