Это может показаться глупым, но у меня есть model_formset для одной модели в моих представлениях, которая передается в мой шаблон. В моем шаблоне я помещаю formset внутри цикла:Django: сохранить один и тот же набор форм несколько раз
<form action="generate/" method="post">
{% csrf_token %}
{{ formset.management_form }}
{% for count in formset_count %}
<p id="{{ count }}">{{ formset }}</p>
{% endfor %}
<div class="submitbutton" style="text-align: center;">
<input type="submit" value="Submit">
</div>
</form>
formset_count только диапазон от 1 до 5. У меня есть JavaScript, который автоматически вводит необходимые значения в formset и каждый formset немного отличается. Я хотел бы отправить и сохранить все 5 форм одновременно, нажав кнопку отправки один раз.
В моих порождающих взглядах у меня есть нормальный:
f = MyFormSet(request.POST)
if f.is_valid():
f.save()
return HttpResponse("Saved")
else:
return HttpResponse(f.errors)
Это экономит только последний formset в цикле.
Можно ли сохранить все 5 форм (один и тот же набор форм с разными значениями) сразу с помощью modelformset_factory?
Я действительно пытаюсь сделать весь набор форм 5 раз :). Мой javascript гарантирует, что каждая форма в каждом из 5 наборов форм будет выполнена правильно, используя элемент id = "{{count}}". Поэтому каждая из нескольких форм в нескольких наборах форм должна быть сохранена при отправке. – wernerfeuer
В этом случае я не думаю, что Django может различать 5 форм, и, следовательно, только последний будет сохранен. Почему бы вместо этого не передать 5 разных форм в ваш шаблон? –