본문 바로가기
코딩공부

Django AbstracUser / TIL_220928

by Dong_Devlog 2022. 9. 28.

Django가 제공 한 user 테이블은 아래와 같다.

여기서 추가적인 정보를 저장하기 위해서는 User 모델을 커스텀 하거나

처음부터 유연한 방법으로 프로젝트를 시작해야 한다.

 

AbstracUser

그 중에 한가지 방법이 AbstracUser의 서브 클래스를 생성하는 방법이다.

Django에서 제공하는 User 모델을 그대로 유지하면서 몇 가지 필드만 추가로 필요할 때 이용하기 좋다.

커스텀 사용자 모델을 구현하는 가장 간편한 방법이다.

from django.db import models
from django.contrib.auth.models import AbstractUser


class CustomModel(AbstractUser):
    address = models.TextField(max_length=500, blank=True)
    bio = models.TextField(max_length=500, blank=True)

 

그리고 settings.py에 아래와 같은 코드를 넣어주면 된다.

AUTH_USER_MODEL을 cusotomuser 앱의 CustomModel 클래스를 사용하겠다는 의미이다.

AUTH_USER_MODEL = 'customuser.CustomModel'

 

마지막으로 admin.py에 app 모델을 등록하여

관리자 페이지에서 확인할 수 있다.

from django.contrib import admin
from .models import CustomModel


admin.site.register(CustomModel)

댓글