Я долго искал, но до сих пор не смог найти подходящий ответ.
В моем классе «Предложение» у меня есть следующее:
/**
* @ORM\OneToMany(mappedBy="offer")
* @var Collection<OfferItem>
*/
protected $offerItems;
/**
* @return Collection
*/
public function getOfferItems()
{
return $this->offerItems;
}
/**
* @param Collection $offerItems
*/
public function setOfferItems($offerItems)
{
$this->offerItems = $offerItems;
}
Теперь я создаю новое предложение и хотел бы добавить также несколько предложений:
$offer = new Offer();
$offerItem = new OfferItem();
$offer->getOfferItems()->add($offerItem);
Но затем возникает ошибка: «Неустранимая ошибка: вызов функции-члена add () при нулевом значении». Хорошо, в некоторых моментах это имеет смысл — коллекция пуста, пока не узнает — и, возможно, «ноль».
Я не такой специалист по PHP / Flow3 / Doctrine, чтобы иметь представление, как справиться с такой ситуацией?
Я думаю, я должен установить пустую (но не нулевую) коллекцию для предложения. Но
$collection = new \Doctrine\Common\Collections\Collection()
Не работает, потому что «Коллекция» является интерфейсом.
Любой намек, идея или что-то подобное, чтобы понять мою проблему, было бы неплохо.
Заранее большое спасибо за вашу помощь!
Задача ещё не решена.
Других решений пока нет …