커스텀 user model은 애플리케이션의 요구에 맞게 Django의 기본 User를 대체합니다—필드 추가, 로그인 식별자 변경(예: username 대신 email), 동작 커스터마이징. 결정적이고 자주 반복되는 조언: 아직 변경이 필요 없더라도 프로젝트의 맨 처음에 커스텀 user model을 설정하세요. 나중에 변경하는 것은 극도로 고통스럽기 때문입니다.
왜: 기본 User는 제한적이고 나중에 변경하기 어려움
기본 User는 고정된 필드(username, email, first/last name)를 가지며
USERNAME을 로그인 필드로 사용. 실제 앱은 종종 필요로 함:
✓ 이메일 기반 로그인(username 없음)
✓ user 자체에 추가 필드(전화번호, 아바타, 역할, 환경설정)
✓ 커스텀 인증 동작
