Я пытаюсь реализовать функцию корзины в моем приложении Symfony.Цель состоит в том, чтобы позволить пользователю добавлять некоторые события в корзину.
Итак, я создал 3 сущности.User
, Event
и Cart
.Пользователь должен получить доступ к своей корзине, чтобы получить его события.Как и $user->getCart
, который будет возвращать ArrayCollection событий.
Я понятия не имею, как лучше всего это сделать с помощью отношения Doctrine.Все, что я пробовал, похоже, не работает.
Вот что я сделал до сих пор:
В моем User
Сущности
/**
* @ORM\OneToOne(targetEntity="App\Entity\Cart", mappedBy="user", cascade={"persist", "remove"})
*/
private $cart;
public function getCart(): ?Cart
{
return $this->cart;
}
public function setCart(Cart $cart): self
{
$this->cart = $cart;
// set the owning side of the relation if necessary
if ($this !== $cart->getUser()) {
$cart->setUser($this);
}
return $this;
}
В моем User
Entity
/**
* @ORM\OneToOne(targetEntity="App\Entity\User", inversedBy="cart", cascade={"persist", "remove"})
* @ORM\JoinColumn(nullable=false)
*/
private $user;
Я остановился здесь, потому что чувствую, что не правильно делаю подход.