2016-07-03 17 views
0

Djangoの書式設定を使用してテーブルをレンダリングすることに成功しましたが、最後に余分な空行が表示されます!私は間違って何をしていますか?Django formset - 余分な行がテーブルにレンダリングされます

<table id="formset" class="form table table-condensed zeon zeon-row-hover"> 
        {{ formset.management_form }} 

        {% for form in formset.forms %} 
         {% if forloop.first %} 
         <thead><tr> 
         {% for field in form.visible_fields %} 
         <th>{{ field.label|capfirst }} 
         {% endfor %} 
         </tr></thead> 
         {% endif %} 
         <tr class="{% cycle row1,row2 %}"> 
         {% for field in form.visible_fields %} 
         <td class = 'zeon_input_table_cell'> 
         {# Include the hidden fields in the form #} 
         {% if forloop.first %} 
           {% for hidden in form.hidden_fields %} 
           {{ hidden }} 
           {% endfor %} 
         {% endif %} 
          {{ field.errors.as_ul }} 
          {{field}} 
         </td> 
         {% endfor %} 
         </tr> 
        {% endfor %}  
        </table> 

ビュー:

MyModelFormSet = modelformset_factory(MyModel, exclude=('agreement_vendors',)) 
formset = MyModelFormSet(queryset = MyModel.objects.filter(...)) 
return render_to_response('vendors/edit_agreement.html', 
          {'formset':formset}, 
           context_instance=RequestContext(request)) 

enter image description here

UPDATE: は、以下の回答によると、問題がDjango docsによるとextra = 0

+0

嬉しいです。 – Rexford

答えて

1

入れて解決される。

ご覧のとおり、1つの空のフォームしか表示されませんでした。表示される空のフォームの数は、余分なパラメータによって制御されます。デフォルトでは、formset_factory()は1つの余分なフォームを定義します。

ArticleFormSet = formset_factory(でArticleForm、余分= 2:Djangoのドキュメントは、余分なフォームの数を設定するには、このような何かをやって提案し、念頭に置いて

:次の例では、2つの空白のフォームが表示されます)

関連する問題