2013-08-02 70 views
0

這裏有樹枝領域我試圖重寫:github如何向Symfony2中的每個擴展表單控件添加一個類?

我有一個已經被修改與此自定義表單主題複選框的列表:

{% block choice_widget_expanded %} 
{% spaceless %} 
    <div {{ block('widget_container_attributes') }}> 
    {% for child in form %} 
     <div class="checkbox_row"> 
     {{ form_widget(child) }} 
     {{ form_label(child) }} 
     </div> 
    {% endfor %} 
    </div> 
{% endspaceless %} 
{% endblock choice_widget_expanded %} 

我嘗試添加使用{{ form_row(form.fieldName), {'attr':{'class':'myclass'}}) }}

但是,只增加了一個類到div#formName_fieldName。接着我嘗試添加自定義塊與

{% block _formName_fieldName_widget %} 
{% spaceless %} 
    <input type="checkbox" {{ block('widget_attributes') }} value="{{ value }}" class="myclass_{{ value }}" /> 

{% endspaceless %} 
{% endblock choice_widget_expanded %} 

通知我還包括值作爲我想有myclass_1, myclass_2

這樣做的問題是,塊接收陣列,使得它應該是這樣的

{% block _fb_post_facebook_pages_widget %} 
{% spaceless %} 
    <div {{ block('widget_container_attributes') }}> 
    {% for child in form %} 
     {{ form_widget(child) }} 
     {{ form_label(child) }} 
    {% endfor %} 
    </div> 
{% endspaceless %} 
{% endblock choice_widget_expanded %} 

不過,如果我想的類添加到特定的複選框,我需要寫是這樣的:

{% block _formName_fieldName_X_widget %} 
{% spaceless %} 
    <input type="checkbox" {{ block('widget_attributes') }} value="{{ value }}" class="myclass_{{ value }}" /> 

{% endspaceless %} 
{% endblock choice_widget_expanded %} 

其中X是,我有fieldName的......明明值可以是任何東西,所以我不能只是創建從1-1000000000000所有值塊的值...

任何方式動態地做這件事?

回答

相關問題