본문 바로가기

WebDev

django custom user

django custom user


문서가 워낙 잘 되어 있어서 그냥 링크의 cheat-sheet만 따라하면 끝

https://docs.djangoproject.com/en/1.9/topics/auth/customizing/#a-full-example


참고로 새 User모델을 정의할 때 따라야 할 규칙은

  1. models.Model이 아닌 AbstractBaseUser를 상속받을것!
  2. password 필드를 만들지 말 것. django가 관리하기 때문. 만들면 충돌난다.
  3. last_login 필드를 만들지 말 것. django가 관리하기 때문. 만들면 충돌난다.
  4. USERNAME_FIELD를 작성하 것. 예를 들어 USERNAME_FIELD = 'username'
  5. REQUIRED_FIELDS를 작성할 것. 반드시 리스트 또는 튜플 타입이어야 함. 예를 들어 REQUIRED_FIELD = ('somefield', 'someanotherfield')
  6. BaseUserManager를 상속받은 UserManager클래스를 작성할 것. 이게 있어야 manage.py에서 제공하는 유저 생성 명령에 대응 가능하다.
  7. objects는 6에서 만든 클래스로 작성할 것. 예를 들어 objects = MakersUserManager()

이다.


이제 User를 사용하고 싶다면 settings.AUTH_USER_MODEL을 사용해도 되고, 그냥 막바로 내가 정의한 User 모델을 불러와도 된다.

'WebDev' 카테고리의 다른 글

Chrome extension 개발  (0) 2016.02.16
Web SQL  (0) 2016.02.15
django facebook login  (0) 2016.02.06
Python으로 현재 컴퓨터가 EC2인지 확인하기  (0) 2016.01.26
Pynamodb Basic Tutorial  (0) 2016.01.25