@sashok1337

Trait категорий в Doctrine и symfony2, как быть с DiscriminatorColumn?

Хочу сделать трейт категорий, который буду использовать в нескольких Entity. Не могу найти как разрулить Discriminator.

Исходник на данный момент:
Trait CollectionTrait
{
    /**
     * @ORM\ManyToMany(targetEntity="DesignerBundle\Entity\Collection")
     * @ORM\JoinTable(
     *      name="entities_to_collections",
     *      joinColumns={@ORM\JoinColumn(name="entity_id", referencedColumnName="id")},
     *      inverseJoinColumns={@ORM\JoinColumn(name="collection_id", referencedColumnName="id")}
     * )
     */
    protected $collections;
    ...........
    ...........
}


Естественно так не работает, выдаёт ошибку "The table with name 'entities_to_collections' already exists."

Буду очень благодарен за помощь :)
  • Вопрос задан
  • 313 просмотров
Пригласить эксперта
Ответы на вопрос 1
Quber
@Quber
PHP Team lead
Trait CollectionTrait
{
    /**
     * @ORM\ManyToMany(targetEntity="DesignerBundle\Entity\Collection")
     * @ORM\JoinTable(
     *      joinColumns={@ORM\JoinColumn(referencedColumnName="id")},
     *      inverseJoinColumns={@ORM\JoinColumn(referencedColumnName="id")}
     * )
     */
    protected $collections;
    ...........
    ...........
}


Вот так пишите, остальное доктрина автоматом сделает: назначит имя таблицы и имена столбцов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы