Bonjour a tous!
Le probleme semble simple, mais en plus de le resoudre, je souhaiterai le comprendre.
Depuis le Symfony 2 Book, j'essaie de faire correspondre des Events a des Category (deux entites donc). Un objet Category peut donc etre 'linke' sur plusieurs objets Events (et inversement)... d'apres le Book :
http://symfony.com/doc/2.0/book/doct...pping-metadata
je procede ainsi:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class Category { /** * @ORM\OneToMany(targetEntity="Event", mappedBy="category") */ protected $events; public function __construct() { $this->events = new ArrayCollection(); }je regenere mes entites et force la generation de mes tables (je les supprime meme de ma base pour etre certain que rien ne traine)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 class Event { /** * @ORM\ManyToOne(targetEntity="Category", inversedBy="events") * @ORM\JoinColumn(name="category_id", referencedColumnName="id") */ */ protected $category;
j'arrive a creer N objet Category mais lorsque je veux creer deux objet Event ayant la meme reference 'category_id' j'obtiens une violation :
Du coup, je regarde ma table Event, et je vois que Symfony2 (ou Doctrine2) m'a cree automatiquement un index unique sur ma colonne 'category_id' fraichement cree par l'ORM. Il m'est donc impossible d'associer N objets Event a 1 objet Category.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '1' for key 'UNIQ_FA6F25A312469DE2'
Ou est ce que j'ai manque quelque chose?
Merci aux lecteurs (et encore plus a ceux qui me repondront)
PS: desole pour les accents... je n'en ai pas!
Partager