Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- graphicdriver
- 봉사활동
- Xangle
- 노트북덮개
- 개발자회고
- 서구동구예비군훈련장
- 타코트론
- 프로그라피
- 놀이동산의슈퍼컴퓨터를작동시켜라
- jaypark.dating
- 우분투비트확인
- 신영준
- 한빛미디어
- tacotron
- machinelearning
- 서버로그
- texttospeech
- 개발자를위한파이썬
- 로그남기기
- 프로그래머스
- 쇠막대기
- 나는리뷰어다
- 인하멘토링
- 2019회고
- intell
- 심플소프트웨어
- 인천남중
- CrossAngle
- 인하대학교
- 결과를얻는법
Archives
- Today
- Total
jc.jang
18강 SignupForm에 Meta.model 적용하기 본문
주제
- SignupForm에 Meta.model 적용하기
노트
- settings.py에 AUTH_USER_MODEL = 'accounts.User'를 설정했다.
- 회원가입을 시도해보면 에러가 발생한다.
- accounts/forms.py
from django.contrib.auth.forms import UserCreationForm
class SignupForm(UserCreationForm):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['username'].validators = [validate_email]
self.fields['username'].help_text = '이메일 형식을 입력하세요.'
self.fields['username'].label = 'Email'
def save(self, commit=True):
user = super().save(commit=False)
user.email = user.username
if commit:
user.save()
return user
- 회원가입할 때 사용한 form이다.
- UserCreationForm을 상속 받아 사용하는데, 기본 사용자 모델을 변경했기 때문에 UserCreationForm을 재정의해야한다.
- 수정 - accounts/forms.py
from django.contrib.auth.forms import UserCreationForm
from .models import User
class SignupForm(UserCreationForm):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['username'].validators = [validate_email]
self.fields['username'].help_text = '이메일 형식을 입력하세요.'
self.fields['username'].label = 'Email'
def save(self, commit=True):
user = super().save(commit=False)
user.email = user.username
if commit:
user.save()
return user
class Meta(UserCreationForm.Meta):
model = User
- Meta 클래스에서 accounts의 User 모델을 사용한다고 명시했다.
요약
- 기본 사용자 모델 변경에 따라 UserCreationForm을 재정의하여 사용할 수 있다.
날짜
- 오후 8시, 20190909
'Django > Django - 인증편' 카테고리의 다른 글
20강 회원가입 시에 프로필 정보 받기 (0) | 2019.09.09 |
---|---|
19강 프로필 수정 구현 (0) | 2019.09.09 |
17강 중복 로그인 막기 (0) | 2019.09.09 |
16강 Permission 시스템을 통한 사용자 접근 제한하기 (2) | 2019.09.09 |
15강 User Admin 커스텀하기 (0) | 2019.09.08 |
Comments