2012-07-04 30 views

回答

8

您可以在窗體中添加儘可能多的窗體。只需在視圖中創建/初始化它們並傳遞到模板以在表單中呈現。

喜歡的東西:

{{ formset1.management_form }} 
{% for form in formset1 %} 
    {{ form }} 
{% endfor %} 

{{ formset2.management_form }} 
{% for form in formset2 %} 
    {{ form }} 
{% endfor %} 

您正在使用多個表單集在一個視圖中,你需要使用前綴的形式在這裏解釋Using more than one formset in a view 簡而言之:

article_formset = ArticleFormSet(prefix='articles') 
book_formset = BookFormSet(prefix='books') 
+0

這並不正常工作。由於兩個表單集的管理表單都是相同的,所以無法在模板中區分formset1.management_form和formset2.management_form。管理窗體實際上包含3個隱藏的輸入字段:這些對於所有的表單集合都是相同的。我想知道爲什麼不django區分這些。 – tejinderss

+1

@tejinderss,您需要在創建視圖時使用前綴,請參閱https://docs.djangoproject.com/en/dev/topics/forms/formsets/#using-more-than-one-formset-in-a -view – Rohan

+0

是的,謝謝指出。 – tejinderss

相關問題