Problème avec les relations ManyToMany

Par Mediouni976, il y a 3 ans


Bonjour, j'ai un problème avec deux entites que j'ai genéré avec le commandes symfony (v 5). J'ai une entité User qui peux être inscrit dans plusieurs formation, et une formation peut être choisie par plusieurs User. J'ai essayé plusieurs possiblités avec les cascade persiste ou le joinTable mais rien marche.

User.php /** * @ORM\Column(type="datetime", nullable=true) */ private $fechaQPago; /** * @ORM\Column(type="datetime") */ private $created_at; /** * @ORM\Column(type="string", length=1000) */ private $observaciones; /** * @ORM\ManyToMany(targetEntity=Formacion::class, mappedBy="alumnosInscritos") */ private $formacionesInscritas; public function __construct() { $this->created_at = new \DateTime(); $this->formacionesInscritas = new ArrayCollection(); } /** * @return Collection<int, Formacion> */ public function getFormacionesInscritas(): Collection { return $this->formacionesInscritas; } public function addFormacionesInscrita(Formacion $formacionesInscrita): self { if (!$this->formacionesInscritas->contains($formacionesInscrita)) { $this->formacionesInscritas[] = $formacionesInscrita; $formacionesInscrita->addAlumnosInscrito($this); } return $this; } public function removeFormacionesInscrita(Formacion $formacionesInscrita): self { if ($this->formacionesInscritas->removeElement($formacionesInscrita)) { $formacionesInscrita->removeAlumnosInscrito($this); } return $this; } Formation.php /** * @ORM\Column(type="string", length=255) */ private $profesor; /** * @ORM\Column(type="string") */ private $horario; /** * @ORM\ManyToMany(targetEntity=User::class, inversedBy="formacionesInscritas") */ private $alumnosInscritos; public function __construct() { $this->alumnosInscritos = new ArrayCollection(); } /** * @return Collection<int, User> */ public function getAlumnosInscritos(): Collection { return $this->alumnosInscritos; } public function addAlumnosInscrito(User $alumnosInscrito): self { if (!$this->alumnosInscritos->contains($alumnosInscrito)) { $this->alumnosInscritos[] = $alumnosInscrito; } return $this; } public function removeAlumnosInscrito(User $alumnosInscrito): self { $this->alumnosInscritos->removeElement($alumnosInscrito); return $this; }

Ce que je veux

Quelqu'un a rencotré ce problème et il/elle a trouvé la solution?

Ce que j'obtiens

Décrivez vos éventuelles erreurs ou ce que vous obtenez à la place de ce que vous attendez :(

6 réponses

thomas borto, il y a 3 ans

du coup c'est pas many to many

Mediouni976, il y a 3 ans

Bonsoir Thomas,
Le update marche dans le sens de formations quand j'ajoute des users mais pas dans l'autre sens. C'est du à quoi à votre avis?

Merci d'avance

Mediouni976, il y a 3 ans

C'est quoi votre identifiant sur discord svp?

thomas borto, il y a 3 ans

thomas56#0903