Django 유저 모델(클래스) 종류
- AbstractUser : AbstractBaseUser를 상속하여 사용자 모델을 커스터마이징할 수 있는 추상 클래스입니다. 이 클래스는 username, email, first_name, last_name 등을 필드로 가지고 있습니다.
- AbstractBaseUser : 최소한의 필드만을 가진 추상 클래스로, Django의 인증 시스템에서 사용자 모델을 커스터마이징할 때 사용됩니다. 이 클래스를 상속받아 자신만의 사용자 모델을 만들어야 하며, 이 경우 반드시 USERNAME_FIELD와 REQUIRED_FIELDS를 정의해야 합니다.
- PermissionsMixin : 사용자 모델에 대한 권한을 관리하기 위한 Mixin 클래스입니다. 이 클래스를 상속받으면 사용자 모델이 django.contrib.auth.models.Permission 모델과 관련된 기능들을 사용할 수 있습니다.
위의 세 가지 모델은 모두 Django에서 제공하는 AbstractBaseUser를 상속받거나 Mixin 클래스를 사용하므로, 커스터마이징이 가능하다.
공식 문서 링크:
https://docs.djangoproject.com/en/3.2/topics/auth/customizing/#substituting-a-custom-user-model
'Django & DRF' 카테고리의 다른 글
[Django] Django의 패키지(Package) & 앱(App) (0) | 2023.04.28 |
---|---|
[Django] Meta 클래스 - Model 클래스에 대한 추가 설정 (1) | 2023.04.21 |
[Django] 세션(Session), 쿠키(Cookie), 토큰(Token), JWT(Json Web Token)? (1) | 2023.04.20 |
[Django] http 요청 method (0) | 2023.04.18 |
[Django] Co.Meet 커뮤니티 페이지 - 팀프로젝트 KPT (1) | 2023.04.18 |