zer*_*00l 1 forms django validation
我有一个django形式(forms.Form).每个表单字段都有初始值,如
class SomeForm(forms.Form):
city = forms.CharField(initial="Your city here")
当某人发布此表单而不更改初始值时(即,如果没有输入任何内容作为城市,则城市字段将为"您的城市").form.is_valid()不会引发验证错误.有什么办法可以让验证失败吗?是否有任何内置的方法/属性可以调用/设置以使表单验证失败?或者我必须手动验证它?
您必须使用Django表单clean_fieldname方法手动执行验证,如下所示:
class SomeForm(forms.Form):
city = forms.CharField(initial='Your city here')
def clean_city(self):
city_name = self.cleaned_data['city']
if city_name in ['Your city here']:
raise forms.ValidationError('Enter a city name.')
return city_name
Run Code Online (Sandbox Code Playgroud)
如果您使用Django 1.2或更高版本,自定义验证器将是值得的.
| 归档时间: |
|
| 查看次数: |
891 次 |
| 最近记录: |