我正在使用Symfony 3.1.3创建一个表单,并希望使用CollectionType
来动态添加复选框。在我的Type
类的buildForm
方法中,我使用以下代码来添加复选框:
$builder->add('levels', CollectionType::class, array(
'entry_type' => CheckboxType::class,
'mapped' => false,
));
foreach($levels as $level) {
$name = 'level_cb_'.$level['name'];
$builder->get('levels')->add($name, CheckboxType::class, array(
'label' => $level['name'],
'required' => false,
'mapped' => false,
));
}
如果我立即在此之后调用
var_dump($builder->get('levels'));
,则复选框将显示在CollectionType
的children
和unresolvedChildren
属性中。稍后我在相关模板中调用{{ dump(form.levels) }}
,它会告诉我children
属性为空。我是否遗漏了一些明显的东西?