Ran*_*ngh 1 php forms repository symfony doctrine-orm
我有这个代码
->add('user', 'entity', array(
'class' => 'Acme\Entity\User',
'query_builder' => function(EntityRepository $er) use ($options)
{ return $er->createQueryBuilder('u')
->orderBy('u.name', 'ASC');
},
'data' => $option['id']
))
Run Code Online (Sandbox Code Playgroud)
它不起作用
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('description')
->add('user', 'entity', array(
'class' => 'Acme\Entity\User',
'query_builder' => function(EntityRepository $er) use ($options) {
return $er->createQueryBuilder('u');
},
'preferred_choices' => array('2')
))
;
}
Run Code Online (Sandbox Code Playgroud)
您可以使用以下某项之一:
在对象中设置默认值
$cl->setUser($this->getDoctrine()->getEntityManager()->getReference('Acme:User',2));
Run Code Online (Sandbox Code Playgroud)在表单构建器中使用首选选项:
'preferred_choices' => array('2')
Run Code Online (Sandbox Code Playgroud)或者设置'property_path' => false
并使用'data' => YourDefaultEnity