可选表单字段中的Symfony错误


Symfony Error in Optional Form Field

我有Symfony 2.7的下一个表单:

$form = $this->createFormBuilder($entity)
            ->add('laboratorio',null, array('required'=>false)->getForm();

" laboratoro "是entity类型的字段。但是当我提交表单而没有选择值时,我得到了下一个错误:

An exception occurred while executing 
'SELECT n0_.id AS id0, n0_.codigo AS codigo1,
n0_.nombre AS nombre2 FROM nom_laboratorio 
n0_ WHERE n0_.id IN (?)' with params [""]:

我认为当可选字段为空时,Symfony不应该尝试通过他的id找到实体。

甚至我尝试在控制器中使用$this->submit($request,true)而不是$this-> handlerrequest ($request),但没有任何变化。

我忽略了什么吗?

请尝试使用empty_data选项。

$form = $this->createFormBuilder($entity)
    ->add('laboratorio',null, array(
        'required'    => false,
        'placeholder' => 'Choose the laboratorio',
        'empty_data'  => null,
    )->getForm();