我有一個用戶註冊表單,其中包含「密碼」和「確認密碼」字段。當我將「min_length」添加到我的密碼字段,然後通過我的自定義clean_confirm_password方法運行提交的數據時,它會提供「密鑰錯誤/密碼」錯誤。Django - 設置min_length時密碼清理失敗
當密碼字段小於5個字符時,會發生這種情況,無論confirm_password字段是否匹配。
我已經嘗試將「min_length」添加到「confirm_password」,但仍然得到相同的錯誤。
一切工作正常,當我完全刪除「min_length」。
任何幫助表示讚賞!
我forms.py文件:
class NewUser(forms.Form):
email = forms.EmailField(max_length=75)
first_name = forms.CharField(max_length=45)
last_name = forms.CharField(max_length=45)
password = forms.CharField(min_length=5, max_length=30, widget=forms.PasswordInput(render_value=False))
confirm_password = forms.CharField(max_length=30, widget=forms.PasswordInput(render_value=False))
def clean_confirm_password(self):
confirm_password = self.cleaned_data['confirm_password']
original_password = self.cleaned_data['password']
if original_password != confirm_password:
raise forms.ValidationError("Password doesn't match")
return confirm_password
這就像一個冠軍!另外,感謝您指出'clean'方法。我做了相應的修改。 – 2010-07-16 02:23:06