2014-02-22 85 views
1

這裏的主要形式佈局樹枝文件:Symfony2的形式佈局 - 變量源

https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig

一個例子:

{% block form_widget_simple %} 
{% spaceless %} 
    {% set type = type|default('text') %} 
    <input type="{{ type }}" {{ block('widget_attributes') }} {% if value is not empty %}value="{{ value }}" {% endif %}/> 
{% endspaceless %} 
{% endblock form_widget_simple %} 

我不知道varaibles像 「型」 或 「價值」 從何而來?

我試圖實現的目標是將窗體行的標籤設置爲小部件中的佔位符。我怎樣才能做到這一點?

回答

0

詳細介紹如何重寫模板表單域,你會發現here.

如果你想標籤更改爲佔位符,所有你需要的是改變你的呈現形式的方式。除去form_widget(form)並切換到使每單獨的表單字段:

{# ... #} 
<div class="form-group"> 
    {{ form_errors(form.email) }} 
    {{ form_widget(form.email, {'attr': {'class': 'form-control', 'placeholder': 'E-mail address'|trans }}) }} 
</div> 
{# ... #} 

此示例產生用於電子郵件字段和HTML/CSS類引導程序輸入。 並向您顯示{{ type }}{{ value }}如何通過 - attr數組。

祝你好運!

+0

讓它與佔位符一起工作並不是一件大事。問題更多的是所有變量來自哪裏。 –

+0

@TaruoGene您提到這是一個目標...閱讀有關表單域的覆蓋模板。和[形式主題](http://symfony.com/doc/current/cookbook/form/form_customization.html#what-are-form-themes)。您會發現通過Symfony \ FrameworkBundle:Form將{{{type}}和{{value}}'傳遞給模板,並與Form Type的實體屬性值和Forms Builder標籤相關聯。 – WebHQ