1

だから、私はこれを部分的に持っているフォームビルダーアクションを持っています:

->add('apples_group', 'entity', 
    array(
        'class' => 'ThingMainBundle:ApplesGroup', 
        'multiple' => true,
        'expanded' => true,
        'property' => 'applesName'
    )
)

これは現在、このコードで複数選択ボックスとして出力されます。

{{ form_widget(form.apples_group, { "attr": {"class": "fields-list" } }) }}

場合によっては - 別のビューで - これは複数である必要はなく、代わりにドロップダウン ボックスにする必要があります。このウィジェットをレンダリングするときに属性 multiple が false であることをウィジェットに指定する方法はありますか?

(この状況でこれが複数になることが許可されているかどうかの検証は、すでにバックエンドにあります)

4

2 に答える 2

0

作成した方が良い

// YourFormType.php
public function __construct(Apple $apple)
{
    $this->apple = $apple;
}

->add('apples_group', 'entity', 
    array(
        'class' => 'ThingMainBundle:ApplesGroup', 
        'multiple' => $this->apple->isMultiple() ,  // you set it in admin, right?
        'expanded' => true,
        'property' => 'applesName'
    )
)

コントローラ:

$entity = new Apple() ;
$form = $this->createForm( new YourFormType($entity), $entity) ;
于 2013-05-15T12:10:56.470 に答える
0

したがって、実際の答えはhttps://github.com/symfony/symfony/issues/6602が着陸するまで待つことのようです。

于 2013-05-20T09:44:04.193 に答える