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)假设我的formset有3种形式。
3)用户提交后,我验证表单集。
4)假设我有3个无效字段,并显示错误消息。
我的问题?
5)是否可以删除所有验证错误,除了保留任何一条错误消息[假设我以某种方式从UI识别此字段]
请建议。
答案 0 :(得分:3)
我猜您正在使用modelformset_factory()
来创建表单集。
您可以轻松地在modelformset_factory 中的formset参数中传递自定义formset,例如modelformset_factory(model_name, formset=CustomFormset)
因此,通过覆盖BaseModelFormSet
并覆盖其干净方法来创建自定义Formset。
参考:https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-clean-on-a-modelformset
在内部清理中,您将获得self.errors
中的错误和self.forms
中的表单。相应地操纵它们。