Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #форма для регистрации
- class RegistrationForm(forms.Form):
- username = forms.CharField(min_length=5, label='Логин:')
- password = forms.CharField(min_length=8, widget=forms.PasswordInput, label='Пароль:')
- password2 = forms.CharField(min_length=8, widget=forms.PasswordInput, label='Повторите ввод:')
- email = forms.EmailField(label='Email:')
- first_name = forms.CharField(max_length=30, label='Введите имя:')
- last_name = forms.CharField(max_length=30, label='Введите фамилию:')
- def clean_username(self):
- username = self.cleaned_data.get('username')
- try:
- user = User.objects.get(username=username)
- raise forms.ValidationError('Логин уже занят')
- except User.DoesNotExist:
- return username
- def clean_password2(self):
- pass1 = self.cleaned_data['password']
- pass2 = self.cleaned_data['password2']
- if pass1 != pass2:
- raise forms.ValidationError('Пароли не совпадают, введите одинакоые пароли')
- def save(self):
- user = User()
- data = self.cleaned_data
- user.username = data.get('username')
- user.password = make_password(data.get('password'))
- user.email = data.get('email')
- user.first_name = data.get('first_name')
- user.last_name = data.get('last_name')
- user.is_active = True
- user.is_superuser = False
- user.save()
- return authenticate(username=user.username, password=user.password)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement