@symnoob

Symfony 4 — Как решить проблему с Entity в Bundle?

Всем привет,

Есть задача, хотел создать Symfony Bundle.
К примеру, Bundle животные, там есть сущность Animals.

Этот бандл должен работать в разных проектах.
В одном проекте сущность Animals сама по себе, в других проектах сущность Animals должна иметь разные ассоциации и отношения ManyToOne, OneToMany и ManyToMany ко всяким другим сущностям.

Как можно такое реализовать?
  • Вопрос задан
  • 243 просмотра
Решения вопроса 1
BoShurik
@BoShurik Куратор тега Symfony
Symfony developer
Вам нужен Mapped Superclass

// Этот класс в бандле
/** @MappedSuperclass */
class BaseAnimal
{
    /** @Column(type="string") */
    protected $name;

    /** @Column(type="integer") */
    protected $size;
    
    /** @Column(type="boolean")  */
    protected $canFly;
}

// Этот класс в проекте
/** @Entity */
class Animal extends BaseAnimal
{
    /** @Column(type="string") */
    private $id;

    /** @ManyToOne(targetEntity="Person")  */
    private $owner;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы