Symfony Twig形式特定领域的主题

时间:2012-09-06 10:15:39

标签: symfony twig symfony-forms symfony-2.1

我有一个自定义表单字段类型和相关的表单主题。在一个页面上,我有很多这些字段,但其中一个字段特别是我想要改变。

有没有办法以不同的方式对同一类型(和同一文件)中的某些字段进行主题化?

简化示例:

form_fields.html.twig :(本地主题文件)

{% block my_dropdown_row %}
<div>
    {{ form_label(form) }}
    {{ form_widget(form) }}
    {{ form_errors(form) }}
</div>
{% endblock %}

在我的表单模板中(所有这些字段都具有相同的类型 - my_dropdown

{{ form_row(form.selectionA) }}
{{ form_row(form.selectionB) }}
{{ form_row(form.selectionC) }}
{{ form_row(form.final_selection) }}

如何将最终字段的样式与其他字段区分开来?这些小部件中有很多代码,因此重复次数越少越好。

2 个答案:

答案 0 :(得分:6)

答案 1 :(得分:0)

老问题已经回答了,但是有更详细的信息会很高兴。

{% form_theme form _self %}

    {% block _product_name_widget %}
    <div class="text_widget">
        {{ block('form_widget_simple') }}
    </div>
{% endblock %}

{{ form_widget(form.name) }}

块名_product_name_widget代表

_ form type(block prefix) _ form item name _ render function

http://symfony.com/doc/current/form/form_customization.html#how-to-customize-an-individual-field