2013-02-20 32 views
0

我創建形式女巫集合類型和集合元素已經與數據轉換女巫場ID到實體轉換器:訪問形式,表單生成的數據添加自定義屬性

$builder->add(
     $builder->create('template', 'text', array(
      'label' => false, 
      'required' => false, 
      'attr' => array(
       'class' => 'template-selector', 
      ) 
     ))->addModelTransformer($transformer) 
    ); 

這是必要的,因爲我想將此字段變爲Select2(javascript lib)ajax powered元素。

問題是我需要使用數據填充Select2,爲此,我只有一個合理的(用於性能)選項將表單構建器的數據作爲屬性傳遞給參數(比如說數據值),但表單構建器除非有數據我在EventListener中創建元素,但不能添加模型轉換器。

我怎麼能實現這樣的功能?沒有任何額外的查詢或Ajax調用?

回答

0

我發現這樣做在樹枝模板的唯一方法:

{% if item.get('value').template %} 
    {% set templ_id = item.get('value').template.getId %} 
    {% set templ_text = item.get('value').template.getTitle %} 

    {{ form_row(item.template, {'attr': {'data-value' : '{id:' ~ templ_id ~ ', text:"' ~ templ_text ~ '"}'}}) }} 
{% else %} 
    {{ form_row(item.template) }} 
{% endif %} 

如果產品形式集合元素