Bonjour à tous,
J'essaye d'avoir un panier avec des produits. Pour chaque produit dans mon panier, j'ai l'attribut "quantité" stocké dans une table association, c'est pourtant très simple :
Panier 1---* PanierProduit *---1 Produit
Classe Panier :
1 2 3 4 5
|
/**
* @ORM\OneToMany(targetEntity="Panierproduit", mappedBy="Panier",cascade={"persist"})
*/
private $panierproduits; |
Classe association "Panierproduit" :
1 2 3 4 5 6 7 8 9 10 11 12
|
/**
* @ORM\ManyToOne(targetEntity=Produit")
*/
private $produit;
/**
* @ORM\ManyToOne(targetEntity="Panier")
*/
private $panier; |
J'enregistre en faisant un persist de mon panier (vu qu'il y a une cascade sur les panierproduits =table association)
Quand je mets un premier produit à mon panier, tout va bien. Par contre, si j'en ajoute un second ou que j'augmente la quantité du premier produit, bam erreur :
A new entity was found through the relationship 'Panierproduit#produit' that was not configured to cascade persist operations for entity:
Bon évidemment, si je rajoute le cascade=persist sur le produit dans la classe association cela fonctionne... sauf que ça me duplique les produits dans la table produit.
Je m'acharne depuis ce matin, je ne comprends pas, je vais péter mon clavier
Partager