我想使用Doctrine2 / Symfony2在我的表单中添加<select>
所选行
如何使用实体返回选择一个值?!
这是我的代码:
$content = new Content();
$form = $this->createFormBuilder($content)
->add('idcontent', 'entity', array(
'class' => 'SdmSiteInterBundle:Activite',
'query_builder' => function($repository) {
return $repository->createQueryBuilder('c')->orderBy('c.name', 'ASC');
},
'property' => 'name',
'data' => 82,
))
->getForm();
为了更多解释,我想要这个结果:
<select>
<option value="25">activity name 01</option>
**<option value="82" selected="selected">activity name 02</option>**
<option value="214">activity name 03</option>
.....
</select>
答案 0 :(得分:0)
老实说,我并不完全理解你的问题,但是如果你想知道如何设置“默认”组合框的值,那么只需设置属性,就像通常初始化对象一样。
$content = new Content();
$content->setActivite($someActivite);
此外,在您的示例中,当您可能要执行以下操作时,您正在为idcontent
类型的$content
字段创建表单字段:
$content = new Content();
$content->setActivite($someActivite);
$form = $this->createFormBuilder($content)
->add('activite', 'entity', array(
'class' => 'SdmSiteInterBundle:Activite',
'query_builder' => function($repository) {
return $repository->createQueryBuilder('c')->orderBy('c.name', 'ASC');
},
'property' => 'name'
))
->getForm();
有关详细信息,请参阅http://symfony.com/doc/current/reference/forms/types/entity.html