rest_auth
를 사용한 회원가입&로그인 구조users/serializers/auth.py
와 users/views.py
에서 기본 rest_auth
오버라이딩rest_auth.registration.views
에서 필요한 클래스 import
settings.py에서 REST_AUTH_REGISTER_SERIALIZERS
커스텀해서 오버라이딩
SignUpSerializer
에서 username 제거하고 trim_whitespace=False로 두어 공백 허용
비밀번호에 왜 공백을 허용...? 더불어 너무 pure한 비밀번호 방식 사용중.
regexvalidator
사용해서 비밀번호 더 고도화? (영문 숫자 필수 합성, 대문자, 특수문자 등등)
getattr
사용해서 settings.REST_USE_JWT
가 False 반환하고 커스텀한 data 리턴
Admin
페이지에서 user 확인하면 personal info 리스트가 나오는데 기본 생성되는 date_joined같은 필드 말고 description, profile_picture등 그 어디에도 웹에서 설정하는 부분이 없음 → abstract user model이 사용되고 있지 않다.
가입 시 필요한 약관들 중에 필수는 백엔드에서 핸들링 할 이유가 없음. marketing email은 필드가 있는데 계정 활성 상태 유지(remember me?)는 필드가 없음 → 심지어 선택이지만 선택할 수 있는 항목도 없을 뿐더러 agree all만 선택 가능. 가입시 default는 또 allow_marketing_email=True
이다.
회원가입시 이메일 인증 진행