我设置了一个包含多个扩展表单的表单
$builder->add('rooms', 'entity', array(
'class' => 'MyBundle:House',
'multiple' => true,
'expanded' => true,
'required' => false
));
基础类 House 有一个 rooms 属性,定义为多对多关系
/**
* @ORM\ManyToMany(targetEntity="RoomsType", cascade={"all"})
*/
private $rooms;
public function __construct()
{
$this->rooms = new \Doctrine\Common\Collections\ArrayCollection();
}
public function addRooms($room)
{
$this->rooms[] = $room;
}
public function getRooms()
{
return $this->rooms;
}
当我呈现表单时
{{ form_row(form.rooms }}
然后提交表单,我遇到以下异常:Expected argument of type 'array' 'string' given (500 Internal Server Error)
如果表单未配置为扩展,则不会引发异常,并且表单与基础对象之间的绑定可以正常工作。
任何想法 ?