Symfony:具有预选值的choice_list

时间:2013-11-18 03:20:34

标签: php symfony doctrine

我的实体中有一个名为 Type 的数组字段,我想限制用户可以为字段指定的值:

Type1      [] subtitle1        [] subtitle2         [] subtitle3

Type2      [] subtitle1        [] subtitle2         [] subtitle3

我设法通过创建choice表单类型和这样的小树枝自定义来实现此目的:

$form = $this->createFormBuilder($entity)
                ->add('name', 'text')
                ->add('type', 'choice', array(
                    'multiple' => true,
                    'choice_list' => new myBundle\Form\Extension\CustomChoiceList($param1,$param2),
                    'label' => 'my Label',
                    'expanded' => true
                ));// CustomChoiceList extends ChoiceList

我现在的问题是,当我有一个我想要编辑的实体时,如何向用户显示相同的表单,但是检查了一些复选框?

我检查了ChoiceList并使用ChoiceView类创建了复选框,该checked类仅labelvaluedata,{{1}}

谢谢

1 个答案:

答案 0 :(得分:3)

您可以使用“data”属性设置预先选中的复选框

$form = $this->createFormBuilder($entity)
                ->add('name', 'text')
                ->add('type', 'choice', array(
                    'multiple' => true,
                    'choice_list' => new myBundle\Form\Extension\CustomChoiceList($param1,$param2),
                    'label' => 'my Label',
                    'expanded' => true,
                    'data' => 0 // Checks the first choise
                ));// CustomChoiceList extends ChoiceList