2013-02-16 57 views
0

我在Symfony2中有一個項目,我有很多不同的形式,做很多不同的事情,我現在正在努力的一件事是解決如何設置兩個不同的模板來處理form_rows。如何在Symfony 2中設置一個或多個不同的form_row模板?

我已經在處理表格的行如下一個fiels.html.twig文件中指定一個form_row模板:

{% block form_row %} 
    {% spaceless %} 
     <div class="form-element{% if errors %} form-element-error{% endif %} widget-group clearfix"> 
      <div class="widget widget-1-of-3"> 
       {{ form_label(form) }} 
      </div> 
      <div class="widget widget-2-of-3"> 
       {{ form_widget(form) }} 
       {% if errors %} 
        <small>{{ form_errors(form) }}</small> 
       {% else %} 
        {% if help is defined %} 
         <small>{{ help }}</small> 
        {% endif %} 
       {% endif %} 
      </div> 
     </div> 
    {% endspaceless %} 
{% endblock form_row %} 

這對我來說一般形式的偉大工程,但我也有一些表單元素我也有表格。這通常用於我正在更新的表單數據組。

在這種情況下,我希望能夠指定使用不同的form_rows模板。

據我所知,我可以通過字段名稱或組來指定行,但我有很多,我只是想要一個更通用的方式來做到這一點。

有誰知道這可以實現。

回答

2

您可以在不同的模板中定義很多表單主題。 要使用主題在頂部的樹枝文件只需添加:

{% form_theme form 'AcmeDemoBundle:Form:fields.html.twig' %} 

{{ form_widget(form) }} 

其中form_theme文件可以與主題定義任何樹枝文件。 現在表單小部件裝飾有附加主題。

+0

嗨丹尼爾,謝謝你的答案。如果兩種不同的樣式分別在不同的頁面上,它會有效,但在某些情況下,我會在同一個模板中有一個標準表格,然後是表格表格,所以不確定這是否會在這種情況下起作用? – 2013-02-17 09:51:08

相關問題