Это кажется простым, но я не могу понять:
Существует три объекта: Fruit
, Vegetable
и Snack
. Закуска имеет поля id
, time
и food
. Пища - это ссылка на один из фруктов или один овощ. Так что это в основном отношения "много-к-одному" / "один ко многим", поскольку одна закуска всегда будет содержать только одну пищу. Но существует более одного целевого объекта.
Как мне отобразить это в Doctrine2?
Простое решение, которое я использовал бы прежде, чем Doctrine2 будет использовать два поля: food_type
и food_id
. Но как я могу установить соединение с пищевым типом в правильную сущность? Я думал о массиве JoinColumns, но не могу найти способ подключения правильной сущности. Я также посмотрел на сопоставленные суперклассы, потому что есть DiscriminatorColumn, но это также кажется неправильным подходом. Если я получу это правильно, суперкласс не может быть самой сущностью - поэтому я не могу создать пищевой объект.
Любая помощь приветствуется. Я уверен, что мне не хватает чего-то простого здесь.