4
我必須製作一個表單,其中使用了多個formset。請告訴我這是否可能。如果是,那麼如何?我可以在django的單一表單中使用多個formset,如果是的話,怎麼樣?
我必須製作一個表單,其中使用了多個formset。請告訴我這是否可能。如果是,那麼如何?我可以在django的單一表單中使用多個formset,如果是的話,怎麼樣?
您可以在窗體中添加儘可能多的窗體。只需在視圖中創建/初始化它們並傳遞到模板以在表單中呈現。
喜歡的東西:
{{ 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')
這並不正常工作。由於兩個表單集的管理表單都是相同的,所以無法在模板中區分formset1.management_form和formset2.management_form。管理窗體實際上包含3個隱藏的輸入字段:這些對於所有的表單集合都是相同的。我想知道爲什麼不django區分這些。 – tejinderss
@tejinderss,您需要在創建視圖時使用前綴,請參閱https://docs.djangoproject.com/en/dev/topics/forms/formsets/#using-more-than-one-formset-in-a -view – Rohan
是的,謝謝指出。 – tejinderss