Symfony2: привязка расширенной формы множественного выбора - PullRequest
1 голос
/ 17 января 2012

Я настроил форму, которая включает несколько расширенных форм

$builder->add('rooms', 'entity', array(
        'class' => 'MyBundle:House',
        'multiple' => true,
        'expanded' => true,
        'required' => false
));

Базовый класс House имеет атрибут комнаты, определяемый как отношение «многие ко многим»

/**
 * @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)

Если форма не настроена как развернутая, исключение не возникает, исвязь между формой и нижележащим объектом работает нормально.

Есть идеи?

1 Ответ

0 голосов
/ 25 января 2012

Ваше targetEntity для ваших отношений имеет нечетное имя RoomsType.Вы уверены, что ваша сущность это RoomsType, а не просто Rooms?Я ожидаю, что ваш RoomsType определит форму для вашей сущности Rooms

...