先前显示的休息命令
我有一个集合类型字段的表单,如下所示:
<div id="beneficiosTab" class="opcional">
Beneficios
<ul class="beneficios" data-prototype="{{ form_widget(formAtendimento.beneficios.get('prototype')) | e }}">
{% for beneficio in formAtendimento.beneficios %}
<li>{{ form_row(beneficio.coTipoBeneficio) }}</li>
<li>{{ form_row(beneficio.vrValor) }}</li>
<li>{{ form_row(beneficio.boConcedido) }}</li>
{% endfor %}
<li><a href="#" id="addBeneficio">Add Beneficio</a></li>
</ul>
</div>
<div style="clear:both"></div>
{{ form_rest(formAtendimento) }}
表单的实体可以有多个集合的项目,或没有。
当实体具有集合的项目时,它可以正常工作,但是当它没有时,树枝中的“for”不会发生,并且在form_rest中会生成一个“Beneficios”div。
任何方式,我可以阻止呢? 提前致谢。
这看起来像是表单渲染中的一个错误。 通过在渲染集合元素之后添加以下代码,我设法禁用了form_rest函数中的额外表单渲染:
{% do form.uploads.setRendered() %}
“上传”是我的收藏字段类型。 但这对我来说似乎并不是最佳实践。
所以整个渲染看起来像这样:
<div id="uploads" data-prototype="{{ form_widget(form.uploads.vars.prototype)|e }}">
{% for upload in form.uploads %}
{{ form_widget(upload) }}
{% endfor %}
</div>
{% do form.uploads.setRendered() %}
form_rest生成所有未提及的表单。 每个输入都是Symnfony2中的表单,集合类型也一样。
你从未打印过收藏品,所以Symfony为你准备。 如果你想隐藏它,并仍然使用form_rest,只需将其打印到:
<div style="display: none" />
链接地址: http://www.djcxy.com/p/81391.html
上一篇: rest command showing previously
下一篇: Custom rendering of a "repeated" field from Symfony 2 in Twig