Symfony2 Formbuilder选择

时间:2013-07-14 21:53:42

标签: symfony symfony-forms

我在Symfony2中有一个FormBuilder和一个这样的字段:

$builder->add('branches', 'entity', array(
  'class' => 'BranchBundle:Branch',
  'query_builder' => function(EntityRepository $er) {
    return $er->createQueryBuilder('b')
      ->andWhere('b.owner = :owner')
      ->setParameter('owner', $this->securityContext->getToken()->getUser())
      ->addOrderBy('b.updated', 'ASC');
   },
   'expanded' => true,
   'multiple' => true
   ));

在我看来,我现在这样渲染:

{{ form_widget(form.branches, {'attr': {'class': 'selrow'}}) }}

我的问题是:Symfony将每个分支呈现为一个自己的复选框。

我想做什么:将每个分支作为选项渲染一个选择。 输出应该是这样的:

<select name="branches" name="createTask[branches][]" id="createTask_branches_1" class="selrow">
  <option class="cust_selectbox">Branch1</option>
  <option class="cust_selectbox">Branch2</option>
</select>

我该怎么做?

1 个答案:

答案 0 :(得分:1)

我可能会在这里遗漏一些东西所以请告诉我是否有。您只想渲染当前为复选框的选项?

若是改变:

   'expanded' => true,
   'multiple' => true

   'expanded' => false,
   'multiple' => false

请参阅:http://symfony.com/doc/current/reference/forms/types/choice.html#select-tag-checkboxes-or-radio-buttons