任何人都可以建议我如何比较django中的两个字段。 因为我在forms.py文件中有两个密码字段。 现在我想比较两个字段,如果两个字段相同,则将用户保存在数据库中 否则附加错误消息以重新输入值。
感谢
答案 0 :(得分:2)
覆盖表单的clean
方法:
class MyRegistrationForm(forms.Form):
password1=...
password2=...
...
def clean(self):
cleaned_data = self.cleaned_data # individual field's clean methods have already been called
password1 = cleaned_data.get("password1")
password2 = cleaned_data.get("password2")
if password1 != password2:
raise forms.ValidationError("Passwords must be identical.")
return cleaned_data
有关详细信息,请参阅the docs。
您还应该添加一些Javascript来在客户端进行检查 - 客户端验证不是服务器端验证的替代,但它对用户更敏感并节省带宽。