我想在symfony2中创建一个这样的optgroup:
$category_choices = array(
array('Category 1' => array(
'1' => 'Option 1...',
'2' => 'Option 2...',
'3' => 'Option 3...'
)),
array('Category 2' => array(
'4' => 'Option 4...',
'5' => 'Option 5...'
))
);
$builder->add('category_list', 'choice', array(
'label' => 'Category',
'choices' => $category_choices
));
但是我想从数据库中获取类别选项,我需要对它们执行一些操作并将它们添加到数组中。我怎么能以相同的表格类型做到这一点? (在表单类型中使用doctrine)
答案 0 :(得分:1)
实际上有几种方法可以做到这一点。
最合理的似乎是在您的表单this so question seems to be nice tutorial
中添加其他选项除此之外,您可以将表单(无论如何应该)定义为服务,并将原则的实体管理器传递给它。这在symfony关于创建表单和服务的教程中有所介绍。
最不合理的选择是在创建Form对象时手动传递doctrine或你在构造函数中的选择,请注意,这完全是非标准的,而且它最简单,也是最不可扩展的。