1
我有兩種形式Django的頁面:另外作爲一個formsetDjango的 - 刷新一個形式,但不清除其他
class FooForm(forms.Form):
number = forms.CharField(
label = "Number",
)
num_forms = forms.CharField(
label = "Num Forms"
)
...
class BarForm(forms.Form):
name = forms.CharField(
label = "Name",
)
...
一個是顯示爲一個單一的形式,並且:
def myview(request):
...
num_forms = request.GET['num_forms'])
formsetFactory = formset_factory(BarForm, extra = num_forms)
formset = formsetFactory()
return render(request, 'template.html', {'form': FooForm(user), 'formset':formset, 'num_forms':num_forms)
我使用django-crispy-forms設置佈局和template.html,這使得它們像這樣:
<form action="{% url myview %}" class="form-horizontal" method="post">
{% crispy form %}
{% if num_forms and num_forms > 0 %}
{% crispy formset formset.form.helper %}
{% endif %}
</form>
我希望的行爲:form
中的一個字段指定要顯示的formset
中的表單數量,因此在該字段的更新中,formset
將以顯示的許多表單重新加載。 form
中的其他字段數據不應被清除或修改。驗證可以運行,但我希望能夠控制何時發生。
有人可以指導我如何實現我的視圖和/或模板,使其工作?謝謝!