Django:如何迭代表单集并访问清理过的数据?
如果我想对我的表单集执行某些操作,而不是立即保存它,该怎么办 我该怎么做Django:如何迭代表单集并访问清理过的数据?,django,django-forms,Django,Django Forms,如果我想对我的表单集执行某些操作,而不是立即保存它,该怎么办 我该怎么做 for form in vehicles_formset.forms: listing.id = None listing.vehicle_year = form.cleaned_data['year'] listing.vehicle_make = form.cleaned_data['make'] listi
for form in vehicles_formset.forms:
listing.id = None
listing.vehicle_year = form.cleaned_data['year']
listing.vehicle_make = form.cleaned_data['make']
listing.vehicle_model = form.cleaned_data['model']
listing.vin = form.cleaned_data['vin']
listing.vehicle_runs = form.cleaned_data['runs']
listing.vehicle_convertible = form.cleaned_data['convertible']
listing.vehicle_modified = form.cleaned_data['modified']
listing.save()
(从而创建多个列表)显然
已清理的\u数据
不存在。在数据中有很多东西,比如0年表
,但这样对我来说毫无用处。你有没有给车辆表单集打过电话。在上面的代码片段之前,\u valid()
此外,在表单集中使用将允许您通过简单地执行listing=form.save(commit=False)
来从表单中获取列表实例,只是为了进一步说明前面的注释,一旦调用了formset.is\u valid()
,您还可以直接在表单集中执行save(commit=False)
。这将返回实例列表,然后可以单独修改并保存:
forms = formset.save(commit=False)
for form in forms:
form.some_field_name = new_value
form.save()
哦,我的上帝。。。。优秀的忍者!我确实忘了调用is\u valid()
。忘记添加了cleaned_数据
info。vehicle表单只是列表模型的一个子集,因此我认为我不能使用form.save()。基本上,它们都有一堆共同的列表数据,我想复制这些数据,然后从车辆表单中获取其他数据。