class User(AbstractUser):
class GenderChoices(models.TextChoices):
MALE = "M", "남성" # DB에는 앞 부분 "M" 값이 저장된다.
FEMALE = "F", "여성"
follower_set = models.ManyToManyField("self", blank=True)
following_set = models.ManyToManyField("self", blank=True)
한 User는 다른 많은 User를 팔로잉 할 수 있고, 다른 User도 다른 많은 User를 팔로잉 할 수 있으니 ManytoMany 관계
위에서 to='' 인자 대상에 User를 넣거나 "self"를 넣어서 모델 자신을 가르킬 수 있다.
Model 객체에 생성시간 자동 생성 하는 옵션
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
각 Model에서 자주 쓰이는 속성은 아래처럼 Model class를 만들고 상속받아서 쓰는 방법도 있다.
class BaseModel(models.Model):
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
class Meta:
abstract = True
# Create your models here.
class Post(BaseModel):
'장고 프레임워크' 카테고리의 다른 글
views.py에 관하여 (0) | 2020.06.04 |
---|---|
Django Template 문법에 관하여 (0) | 2020.06.03 |
3 - JSON 직렬화 (0) | 2020.05.31 |
1. API Server와 Rest (0) | 2020.05.29 |
장고 DB ORM 사용법 (0) | 2020.02.28 |
댓글