http://symfony.com/doc/current/cookbook/form/form_collections.html
Symfony2 embedded forms rendering in a twig template
我知道如何在单个字段的基础上渲染这两个表单 - 但我想以更方便的方式呈现主表单和子表单:
{{ form_start(form) }}
{{ form_widget(form.base) }}
{{ form_widget(form.child1) }}
{{ form_widget(form.child2) }}
{{ form_end(form) }}
可能?或者,如果我需要这种类型的控制,我是否必须单独渲染每个字段?
编辑|这是我有什么
<div class="box box-primary">
{{ form_start(form) }}
<div class="nav-tabs-custom">
<ul class="nav nav-tabs">
<li class="active"><a href="#activity" data-toggle="tab">Master</a></li>
<li><a href="#timeline" data-toggle="tab">Stock</a></li>
</ul>
<div class="tab-content">
<div class="active tab-pane" id="activity">
{{ form_row(form.partNumber) }}
{{ form_row(form.partDescription) }}
</div>
<div class="tab-pane" id="timeline">
{% for stock in form.inventoryStock %}
<div>{{ form_widget(stock.onHandQuantity) }}</div>
<div>{{ form_widget(stock.batchNumber) }}</div>
<div>{{ form_widget(stock.serialNumber) }}</div>
{% endfor %}
</div>
</div>
</div>
{{ form_end(form) }}
</div>
答案 0 :(得分:0)
你应该只需要这样做:
{{ form_start(form) }}
{{ form_widget(form) }}
{{ form_end(form) }}
请参阅Symfony文档的Rendering the Form部分。只要一切都被正确定义,Symfony将为您呈现表单的所有部分,包括嵌入的表单。
您经常需要使用这些功能以获得额外的粒度,但这并不是必需的。
此外,完全可以做你所说的 - 只是试一试,你就会发现你可以。