我有form.py的django validation,在某些情况下,验证必须被覆盖。
我有一些代码,我看不出为什么验证代码没有像我预期的那样工作。这是杀了我b / c我看不出这个问题。
以下代码,当if条件为true时,应该引发验证错误。如果为false,则代码应删除用户输入的文本并提交表单。当前操作是未输入错误条件。
以下是我的代码:更新包含名人
def clean(self):
ADDRESS_FIELDS = {
0: AddressFields(LocalityDisplay=True, LocalityRequired=False, RegionDisplay=True, RegionRequired=False, PostcodeDisplay=True, PostcodeRequired=False),
............
253: AddressFields(LocalityDisplay=False, LocalityRequired=False, RegionDisplay=True, RegionRequired=True, PostcodeDisplay=False, PostcodeRequired=False),
............
}
.......
if atype_config.LocalityRequired:
if 'name_of_field' in cd_addf and len(cd_addf['name_of_field'].strip()) == 0:
self._errors['name_of_field'] = self.error_class([_("This field is required.")])
else: # do this when false.
self.cleaned_data.pop('name_of_field', None) # remove the entered value.