Django

[Django] AbstractUser이용하여 사용자 정의 User모델 만들기

jkkooooooo 2020. 4. 7. 22:36
반응형

Django에서 AbstractUser를 상속받아 User모델을 재정의 하여 사용할 수 있다.

 

AbstractUser이용 User모델 정의

위 그림과 같이 로그인을 할때 UserName대신 email 주소로 할수 있게 하려면 USERNAME_FIELD를 email로 하여 User모델을 만들 수 있다.

 

여기서 주의할 점은 User모델을 재정의하여 사용 할 때는 settings.py에서 AUTH_USER_MODEL 을 추가해줘야 한다.

추가를 안하고 makemigration 명령어를 실행하게 되면 아래와 같은 에러가 발생한다.

Error 화면

AUTH_USER_MODEL = 'app_name.user_model'과 같이 App이름과 재정의 한 User모델의 이름을 명시해 주고 migration을 실행하면 끝이다.

 

 

AUTH_USER_MODEL 추가 예시

users라는 App에 User라는 모델을 추가한다는 뜻으로 보면 된다.

반응형