Note that there are some explanatory texts on larger screens.

plurals
  1. PODjango form not calling clean_<fieldname>
    text
    copied!<p>I am attempting to validate a form (and it used to work before). For some reason, I can't seem to get the various cleaning functions such as clean_username(self) to get called when form.is_valid() is called. </p> <p>I know there are not nearly enough checks yet (they are under construction you see ;-) ), but here are my classes:</p> <pre><code> class LoginForm(forms.Form): username = forms.CharField(max_length=30) password = forms.CharField(max_length=30,widget=forms.PasswordInput) def clean_password(self): print "Cleaning password" password = self.cleaned_data['password'] if password == u"": raise forms.ValidationError("Password is blank.") return password def clean_username(self): username = self.cleaned_data['username'] if len(username) &lt; 4: raise forms.ValidationError("Username is fewer than four charecters.") return username class RegistrationForm( LoginForm ): confirm_password = forms.CharField(widget=forms.PasswordInput, max_length=30) email = forms.EmailField() def clean_confirm_password(self): print "Cleaning confirm password" clean_confirm_password = self.cleaned_data['confirm_password'] if clean_confirm_password == u"": raise forms.ValidationError("Confirming password is blank.") return clean_confirm_password def clean(self): print "Running clean on a registration form" print self.cleaned_data.items() password = self.cleaned_data['password'] confirm = self.cleaned_data['confirm_password'] if password != confirm: raise forms.ValidationError('Passwords do not match.') return self.cleaned_data </code></pre> <p>Thank you!</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload