У меня есть класс Item и Package, который расширяет Item. Единственное поле, которое добавлено в классе Package, - это $ components, которые я хотел бы представлять собой массив объектов Item. Я новичок в zend/doctrine, я использую учебники, чтобы изучить его.
Я смог узнать, как получить таблицы форм объектов без проблем, но я не знаю, как я могу получить объект Package, который содержит массив объекта Item с их количеством. Как это должно быть сделано?
Класс предмета:
class Item {
protected $item_id,
/* @ORM\Column(type="string") */
protected $name
/* @Column(type="decimal", precision=10, scale=2) */
protected $price
}
таблица позиций:
item_id int,
name varchar(100),
price decimal(10,2)
Класс пакета:
Class Package extends Item
{
protected $ingredients; // This field should be an array of Item objects.
}
item_ingredient table (содержит отношение ингредиент-ингредиент):
item_id int,
ingredient_id int,
quantity int
Вам необходимо установить связь между классами сущностей. Пройдите учебник доктрины для установления отношений между сущностями.
В основном пакет имеет отношение "Много к одному" с элементом, и его можно настроить только через соответствующие аннотации.