Symfony2 Отношение две сущности, arraycollection
Я создал 2 лицаUser
а также Photo
Теперь я хочу создать отношение один ко многим.
Предположим, у меня есть этот код в User
класс сущности:
// User.php
/**
* @ORM\OneToMany(targetEntity="Photo", mappedBy="user")
*/
protected $photos;
public function __construct()
{
$this->photos = new ArrayCollection();
}
когда я добавляю форму фотографии в форму пользователя, аналогично тому, как это делается в этом коде
// UserType.php
public function buildForm(FormBuilder $builder, array $options)
{
// ...
$builder->add('photos', new PhotoType());
}
это бросает:
Expected argument of type "Acme\UserBundle\Entity\Photo", "Doctrine
\Common\Collections\ArrayCollection" given
так как я могу добавить форму фото в форму пользователя?
извините за мой английский
1 ответ
Решение
Вы ошиблись в своем конструкторе форм: вам нужна коллекция PhotoType:
$builder->add('photos', 'collection', array('type' => new PhotoType()));