Если одна сторона отношения ManyToOne
, то другая сторона отношения должна быть OneToMany
.
У вас есть два отношения, идущие от Билета к Пользователю. Одним из них является ManyToOne
, где ваше отображение, кажется, говорит: User
может иметь много Ticket
с.
Эта сторона Ticket::$user
, кажется, в порядке:
/**
* @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="tickets")
*/
private $user;
Но обратные отношения неправильны, неправильны. Это ManyToMany
, но он указывает на ManyToOne
. Исправьте это так, что это OneToMany
, и оно должно работать.
/**
* @ORM\OneToMany(targetEntity="App\Entity\Ticket", mappedBy="user")
*/
private $tickets;
У вас также есть ManyToMany
при переходе от Ticket
к User
, но вы пытаетесь использовать это свойство для инверсии отношения, которые не имеют смысла.
Если вы хотите отобразить обратную сторону Ticket::$responsible
, вам нужно добавить еще одно свойство к User
.
Например:
// User entity
/**
* @ORM\ManyToMany(targetEntity="App\Entity\Ticket", mappedBy="responsible")
*/
private $tickets_responsibility;
// Ticket entity
/**
* @ORM\ManyToMany(targetEntity="App\Entity\User", inversedBy="tickets_responsibility")
*/
private $responsible;