Php 一个文件中有多个symfony2表单类型模板?

Php 一个文件中有多个symfony2表单类型模板?,php,forms,symfony,twig,Php,Forms,Symfony,Twig,我在Symfony2中创建了两个自定义表单类型及其各自的细枝模板。在阅读时,我注意到他们把这根树枝叫做“fields.html.twig”。这让我相信我可以在一个文件中定义多个块,但我似乎不明白如何定义?这是我当前的fields.html.twig文件: {% block open_range_widget %} <div class="open_range_widget" style="display: inline;"> <div class="fi

我在Symfony2中创建了两个自定义表单类型及其各自的细枝模板。在阅读时,我注意到他们把这根树枝叫做“fields.html.twig”。这让我相信我可以在一个文件中定义多个块,但我似乎不明白如何定义?这是我当前的fields.html.twig文件:

{% block open_range_widget %}
    <div class="open_range_widget" style="display: inline;">
        <div class="field" style="display: inline;">
            {{ form_errors(form.sel) }}
            {{ form_widget(form.sel) }}
        </div>
        <div class="field" style="display: inline;">
            {{ form_errors(form.val) }}
            {{ form_widget(form.val) }}
        </div>
    </div>
{% endblock %}

{% block range_widget %}
    <div class="range_widget" >
        <div class="field" style="display: inline; width: 50%">
            {{ form_errors(form.min) }}
            {{ form_widget(form.min) }}
        </div>
        <div class="field" style="display: inline; width: 50%">
            {{ form_errors(form.max) }}
            {{ form_widget(form.max) }}
        </div>
    </div>
{% endblock %}
{%block open\u range\u widget%}
{{form_errors(form.sel)}}
{{form_小部件(form.sel)}
{{form_errors(form.val)}}
{{form_小部件(form.val)}
{%endblock%}
{%block range_widget%}
{{form_errors(form.min)}
{{form_小部件(form.min)}
{{form_errors(form.max)}
{{form_小部件(form.max)}
{%endblock%}

如果您查看“vendor/symfony/symfony/bridge/Twig/resources/views/form/”内部,您会注意到一个名为form\u div\u layout.html的文件,您会注意到这里包含了标准Symfony2表单小部件的整个集合。因此,可以在模板文件中定义任意数量的块。虽然最好把东西分开一点。假设您有两种不同的样式用于依赖于表单的choice小部件,您需要两个模板来定义这些样式


您甚至可以将附带的整个模板复制到App/Resources/Views/Form/Form\u div\u layout.html,并直接在其中进行修改。但是,它可能会导致一个复杂而混乱的模板文件,其中包含许多不需要的块。

您的模板文件有什么问题?你有错误吗?你只是不知道如何告诉symfony使用这个文件吗?我看了一下,你是对的。我可能做错了什么。对于一个单页web应用程序,这是完全好的。谢谢