2012-01-11 54 views
1

我有一个包含五种表单的表单集。每个表单只是一个文件输入元素。说,有一些无效的表单,因为格式不允许的文件被选中。我将如何从formset中删除这个无效表单并让formset继续正常处理?从formset中删除无效表单

注意我试图myformset.forms.pop(i)但导致“指标外”例外在表单集的进一步处理。

回答

4

这里的目标是什么?要只保存有效的表单并简单地忽略那些不是的表单?

如果是这样的话,那么简单地遍历表单集,只保存有效的那些:

for form in formset: 
    if form.is_valid(): 
     form.save()