Forms symfony表单集合自定义
我使用collection创建了symfonyForms symfony表单集合自定义,forms,symfony,Forms,Symfony,我使用collection创建了symfony <fieldset> <legend>{{ 'Comments'|trans }}:</legend> {{ form_start(form) }} <table> <tbody> <tr> <td>{{ form_label(form.category) }}</
<fieldset>
<legend>{{ 'Comments'|trans }}:</legend>
{{ form_start(form) }}
<table>
<tbody>
<tr>
<td>{{ form_label(form.category) }}</td>
<td>{{ form_widget(form.category) }}</td>
</tr>
<tr><td colspan="2">{{ form_errors(form.category) }}</td></tr>
<tr><td colspan="2">{{ form_label(form.comment) }}</td></tr>
<tr><td colspan="2">{{ form_widget(form.comment) }}</td></tr>
<tr><td colspan="2">{{ form_errors(form.comment) }}</td></tr>
<tr><td colspan="2">{{ form_label(form.documents) }}</td></tr>
<tr><td colspan="2">{{ form_widget(form.documents) }}</td></tr>
<tr><td colspan="2">{{ form_errors(form.documents) }}</td></tr>
<tr>
<td colspan="2">
{{ form_widget(form.save) }}
</td>
</tr>
</tbody>
</table>
{{ form_end(form) }}
</fieldset>
{{‘注释’| trans}}:
{{form_start(form)}}
{{form_标签(form.category)}
{{form_小部件(form.category)}
{{form_errors(form.category)}}
{{form_标签(form.comment)}
{{form_小部件(form.comment)}
{{form_errors(form.comment)}}
{{form_标签(form.documents)}
{{form_小部件(form.documents)}
{{form_errors(form.documents)}}
{{form_小部件(form.save)}
{{form_end(form)}}
但我有一件事需要在上传输入后从erros表格中找到
<tr><td colspan="2">{{ form_label(form.documents) }}</td></tr>
<tr><td colspan="2">{{ form_widget(form.documents) }}</td></tr>
<tr><td colspan="2">{{ form_errors(form.documents) }}</td></tr>
{{form_标签(form.documents)}
{{form_小部件(form.documents)}
{{form_errors(form.documents)}}
但以下是我得到的和我需要实现的:
如何实现这种行为?通过创建自定义表单行模板,我找到了一个解决方案,如中所示
{Path/ToBundle/Forms/fields.html.twig}
{%block form_row%}
{%spaceless%}
{{form_标签(form)}
{{form_widget(form)}
{{form_errors(form)}}
{%endspaceless%}
{%endblock form_row%}
然后我将其包含在格式副本之前:
{% form_theme form with 'PathToBundle:Forms:fields.html.twig' %}
<fieldset>
<legend>{{ 'Comments'|trans }}:</legend>
{{ form_start(form) }}
...
{%form\u主题表单与'PathToBundle:Forms:fields.html.twig'%}
{{‘注释’| trans}}:
{{form_start(form)}}
...
最后,我使用包含的模板渲染表单行:
<tr><td colspan="2">{{ form_row(form.documents) }}</td></tr>
{{form_行(form.documents)}
虽然我仍然需要改进html标记,但它工作良好,并按所需顺序呈现元素。是
文档
您的集合吗?是的,对于简单字段,更改顺序就足够了,如示例代码中所示,但对于集合,它不起作用
<tr><td colspan="2">{{ form_row(form.documents) }}</td></tr>