我收集了很多表格,我想以这种方式呈现:
<form>
<fieldset>
<legend>Form One</legend>
<ul>
<li><label>Label 1</label><input /></li>
<li><label>Label 2</label><input /></li>
<li><label>Label 3</label><input /></li>
<li><label>Label 4</label><input /></li>
<li><label>Label 5</label><input /></li>
<li><label>Label 6</label><input /></li>
</ul>
</fieldset>
<fieldset>
<legend>Form Two</legend>
<ul>
<li><label>Label 1</label><input /></li>
<li><label>Label 2</label><input /></li>
<li><label>Label 3</label><input /></li>
<li><label>Label 4</label><input /></li>
<li><label>Label 5</label><input /></li>
<li><label>Label 6</label><input /></li>
</ul>
</fieldset>
</form>
等等。
我现在已经尝试了几个小时来使用表单主题,我甚至玩过vendor / symfony / src / bridge / Twig / Ressources / view / Form / form_div_layout.html.twig
但是我没有成功,twig总是使用li而不是fieldset来渲染子表单等等
有人知道我能做什么吗?
{% use "form_div_layout.html.twig" %}
{% block field_row %}
<li>
{{ form_label(form, label|default(null)) }}
{{ form_widget(form) }}
</li>
{% endblock field_row %}
{% block form_errors %}
{% if errors|length > 0 %}
{{ block('field_errors') }}
{% endif %}
{% endblock form_errors %}
{% block field_errors %}
{% if errors|length > 0 %}
<ul>
{% for error in errors %}
<li>{{ error.messageTemplate|trans(error.messageParameters, 'validators') }}</li>
{% endfor %}
</ul>
{% endif %}
{% endblock field_errors %}
{% block hidden_row %}
<b>{{ form_widget(form) }}</b>
{% endblock hidden_row %}
{% block form_widget %}
<ul {{ block('widget_container_attributes') }}>
{{ block('field_rows') }}
{{ form_rest(form) }}
</ul>
{% endblock form_widget %}
{% block collection_widget %}
{% if prototype is defined %}
{% set attr = attr|merge({'data-prototype': form_row(prototype) }) %}
{% endif %}
{{ block('form_widget') }}
{% endblock collection_widget %}
答案 0 :(得分:0)
您的窗体小部件用于表单的文件本地化是什么?
在config.yml
你应该
# Twig Configuration
twig:
debug: %kernel.debug%
strict_variables: %kernel.debug%
form:
resources:
- 'YourBundle:Form:fields.html.twig'
或者您可以使用表单在同一模板中定义窗口小部件,但在这些窗口小部件添加之前
{% form_theme form _self %}