2014-08-30 180 views
3

我忙于在Symfony 2.0中对模板进行模板化。动态设置Widget容器属性

是可能的属性添加到这样的formfield:

$form->add('name', 'text', array('attr' => array('class' => 'my_class'))); 

但我怎么能动态属性添加到formfield小部件?如果我看向form_div_layout.html.twig内容,它们是

{{ block('widget_container_attributes') }} 

其中可以加载的属性,但我不知道在哪里我可以在控制器属性添加到我的FormBuilder。任何人都可以帮我吗?

Thx!

回答

2

你应该做的是,在树枝层:

{{ form_row(form.name, {attr: {class: 'my_class'}}) }} 
+0

THX的答案!但是在控制器中添加这些数据是不可能的?如果类名my_class是可变的呢?如果它是来自数据库的数据?奇怪的是,您可以在控制器本身中添加字段选项,如属性。但你不能设置任何容器选项... – 2014-08-31 13:42:13

+1

@ArneDeSmedt,'widget_container_attributes'用于'compound'字段,并且可以像其他人那样设置'attr',你想设置哪个字段类型的容器属性?替代解决方案,您可以扩展表单主题(http://symfony.com/doc/current/cookbook/form/form_customization.html) – 2014-09-01 09:25:13