我已经完成了我的表单的第一个验证器,我有一种感觉,这不是它应该完成的方式。django表单验证看起来像不好的代码
它的工作原理,但它看起来像丑陋的代码,有人可以帮忙吗?
我的表格:
class CountryForm(forms.ModelForm):
"""Form to create or edit Countries."""
class Meta:
model = Country
def clean_name(self):
raw_data = self.cleaned_data['name']
data = raw_data.title()
try:
Province.objects.get(name=data).exists()
raise forms.ValidationError("There is already a province with the name: %s") % data
except:
pass
try:
Region.objects.get(name=data).exists()
raise forms.ValidationError("There is already a region with the name: %s") % data
except:
pass
return data
我的想法是,看看名字作为名称存在于其他两款车型,当它确实提出了一个错误。
非常感谢,使得更清楚:) –
然而,我有点不确定,如果没有放置的地方(form.instance和form.instance.pk):我认为之前他们检查与其他2缩进,但没有似乎在做伎俩 –