я нахожу код проверки django, но я нахожу, что он был написан 3 года назад,
, поэтому он слишком стар, чтобы его использовать?*
это код:
class UserField(forms.CharField):
def clean(self, value):
super(UserField, self).clean(value)
try:
User.objects.get(username=value)
raise forms.ValidationError("Someone is already using this username. Please pick an other.")
except User.DoesNotExist:
return value
class SignupForm(forms.Form):
first_name = forms.CharField(max_length=30)
last_name = forms.CharField(max_length=30)
username = UserField(max_length=30)
password = forms.CharField(widget=forms.PasswordInput())
password2 = forms.CharField(widget=forms.PasswordInput(), label="Repeat your password")
email = forms.EmailField()
email2 = forms.EmailField(label="Repeat your email")
def clean_email(self):
if self.data['email'] != self.data['email2']:
raise forms.ValidationError('Emails are not the same')
return self.data['email']
def clean_password(self):
if self.data['password'] != self.data['password2']:
raise forms.ValidationError('Passwords are not the same')
return self.data['password']
def clean(self,*args, **kwargs):
self.clean_email()
self.clean_password()
return super(SignupForm, self).clean(*args, **kwargs)
спасибо