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()));

Другие вопросы по тегам