【发布时间】:2014-01-20 07:45:23
【问题描述】:
我目前正在运行 Django 1.4。
当我创建一个模型表单集并为额外表单提供初始值时,Django 然后对其运行验证,发现其他必填字段为空,因此引发验证错误。
我的代码如下所示:
QueryFormset = modelformset_factory(Query, extra=1,
can_delete=True, form=QueryForm
)
if request.method == "POST":
qformset = QueryFormset(request.POST)
if qformset.is_valid():
qformset.save()
else:
# This is where we go when the formset is saved without
# any values inserted into the extra form
else:
qformset = QueryFormset(
queryset=Query.objects.filter(user=request.user),
initial=[{'user': request.user}]
)
如果我只是单击保存而不对表单的值(现有表单或额外表单)进行任何更改,则表单集被标记为无效,因为额外表单在用户字段中有某些内容,但缺少另一个必填字段。
我如何让 Django 让它过去?它应该丢弃多余的表单,因为没有任何更改。
【问题讨论】:
-
你有没有想过这个问题?我也有同样的问题。
标签: django validation django-forms