如何在symfony 2表单构建器中向选项元素添加自定义属性

Cha*_*ase 7 php forms formbuilder symfony

我试图使用symfony2表单生成器向选项元素添加自定义属性即时通讯我不确定本机是否可行.如果不是我需要知道如何添加功能.

以下面的形式为例:

class FooForm extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('user','choice',array(
            'choices' => array(
                 'designers'=>'designers',
                 '1'=>'mike',
                 '2'=>'carroll',
                 'developers'=>'developers',
                 '3'=>'chase',
                 '4'=>'brett',
                 '5'=>'jordan',
             )
        ));
    }
}
Run Code Online (Sandbox Code Playgroud)

然后在渲染时我需要它看起来像:

<select>
    <option value="" disabled="disabled">designers</option>
    <option value="1">mike</option>
    <option value="2">carroll</option>
    <option value="" disabled="disabled">developers</option>
    <option value="3">chase</option>
    <option value="4">brett</option>
    <option value="5">jordan</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我所期待的将是这样的:

class FooForm extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('user','choice',array(
            'choices' => array(
                 'designers'=>array(
                      'label'=>'designers',
                      'attr'=>arrry('disabled'=>'disabled')
                 ),
                 '1'=>'mike',
                 '2'=>'carroll',
                 'developers'=>array(
                      'label'=>'developers',
                      'attr'=>arrry('disabled'=>'disabled')
                 ),
                 '3'=>'chase',
                 '4'=>'brett',
                 '5'=>'jordan',
             )
        ));
    }
}
Run Code Online (Sandbox Code Playgroud)

但那不起作用.所以对此的任何帮助将不胜感激.

Fab*_*one 6

它可能choice2.7开始.看看这里.随着choice_attr.

  • 在我需要它2年后,他们添加它.感谢您更新它 (2认同)