Я использую функцию django inlineformset_factory.
a = get_object_or_404(ModelA, pk=id)
FormSet = inlineformset_factory(ModelA, ModelB)
if request.method == 'POST':
metaform = FormSet (instance=a, data=request.POST)
if metaform.is_valid():
f = metaform.save(commit=False)
for instance in f:
instance.updated_by = request.user
instance.save()
else:
metaform = FormSet(instance=a)
return render_to_response('nodes/form.html', {'form':metaform})
Происходит следующее: если я изменяю какие-либо данные, все работает нормально, и все данные обновляются. Однако, если я не изменяю какие-либо данные, данные не обновляются. т.е. только те записи, которые были изменены, проходят через цикл for для сохранения. Думаю, это имеет смысл, поскольку нет смысла сохранять данные, если они не изменились. Однако мне нужно пройти и сохранить каждый объект в форме независимо от того, есть ли у него какие-либо изменения.
Итак, мой вопрос: как мне переопределить это, чтобы он проходил и сохранял каждую запись, есть ли в ней какие-либо изменения или нет?
Надеюсь, это имеет смысл
Спасибо