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();
    }
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;
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)

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 :

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'
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.

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!