0

1)我有5个字段的模型形式。

class myModel(models.Model):
     field1 = models.CharField(max_length=30, blank=True, null=True)
     field2 = models.CharField(max_length=30, blank=True, null=True)
     field3 = models.CharField(max_length=30, blank=True, null=True)
     field4 = models.CharField(max_length=30, blank=True, null=True)
     field5 = models.CharField(max_length=30, blank=True, null=True)

 class MyForm(ModelForm):
      class Meta:
          model=MyModel

2)假设我的表单集有 3 个表单。

3)一旦用户提交,我验证表单集。

4) 假设我有 3 个带有错误消息的无效字段。

我的问题?

5)除了保留任何一条错误消息外,是否可以删除所有验证错误[假设我以某种方式从 UI 识别此字段]

请建议。

4

1 回答 1

3

我猜您正在使用modelformset_factory()创建表单集。

您可以轻松地在 modelformset_factory 的 formset 参数中传递自定义表单集,例如modelformset_factory(model_name, formset=CustomFormset)

BaseModelFormSet因此,通过覆盖并覆盖其 clean 方法来创建自定义 Formset 。

参考:https ://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-clean-on-a-modelformset

在 clean 里面,你会得到错误 dict inself.errors和 forms in self.forms。相应地操作它们。

于 2013-11-12T12:47:06.813 回答