장고는 기본적으로 유저모델을 가지고 있다.
위처럼 /admin 으로 접속하여 확인해보면 기본적으로 유저모델이 존재함을 알 수 있다.
이 모델을 인증관련해서 활용하게 되는 것이다.
그런데 대부분의 경우 Default로 존재하는 유저모델이 아닌 자신의 프로젝트에 맞게
커스텀하는 커스텀 유저모델이 필요할 때가 있다.
따라서 이 포스팅에서는 장고 커스텀 유저 모델을 만드는 방법을 설명한다.
먼저 아래의 명령어로 유저모델로 사용할 앱을 하나 생성해준다.
django-admin startapp users
다음으로 모델을 생성해야 한다. /users/models.py를 다음과 같이 수정한다.
AbstractUser를 상속받은 후 우리의 프로젝트에 필요한 부분들을 추가해주는 방식이다.
아래 원하는 컬럼을 추가적으로 작성해준다.
다음으로 settings.py에서 아래의 부분들을 수정해준다.
INSTALLED_APPS의 끝부분에 아까 생성한 앱 이름인 users를 기입한다.
그리고 settings.py 아무곳에다가 아래의 내용도 추가해준다.
위 코드는 기본 인증 모델로 우리가 생성한 유저모델을 사용하겠다는 뜻이다.
마지막으로 어드민 페이지에서 우리가 생성한 유저모델을 확인하기 위해 /users/admin.py를 다음과 같이 수정한다.
register를 통해 우리의 모델을 어드민 패널에 등록해주는 작업이다.
다음으로 makemigrations를 해준다.
위처럼 정상적으로 작업이 수행됐다면 마지막으로 migrate 해준다.
이제 createsuperuser로 어드민 계정을 생성해주고 /admin으로 로그인을 해보면,
이렇게 우리가 생성한 유저모델이 등록되어 있는것을 확인할 수 있다.
'Coding > Python' 카테고리의 다른 글
Django Admin 페이지 수정 정리 (0) | 2018.04.20 |
---|---|
Django Model 정리 (0) | 2018.04.19 |
Django pipenv로 가상환경 구축 (0) | 2018.04.18 |
Django Restframework HTTP Method Override하는 방법 (0) | 2018.03.16 |
장고(Django) Apache랑 연동하는 방법 (0) | 2018.02.19 |