Bonjour.

Contexte :
Je développe une API Rest sous symfony2. J'utilise Doctrine, FOSUserBundle et FOSRestBundle.
Je configure mes entités avec des annotations. J'ai généré mes entités par la console.

J'ai deux entités : User et Plan.
User est une extension de FOS\UserBundle\Model\User du FOSUserBundle.
Ces deux entités sont liées par une relation ManyToOne bidirectionnelle (Plusieurs utilisateurs pour 1 seul plan).
J'ai donc une clé étrangère plan_id de type int(11) dans la table user en bdd.
Voici le code de mes deux entités :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
class Plan implements PlanInterface
{
    /* ... */
 
    /**
    * @ORM\OneToMany(targetEntity="...\UserBundle\Entity\User", mappedBy="plan")
    */
    private $users;
 
    public function __construct() 
    {
        $this->users = new \Doctrine\Common\Collections\ArrayCollection();
    }
 
    /* ... */
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
class User extends BaseUser
{
    /* ... */
 
    /**
    * @ORM\ManyToOne(targetEntity="...\PlanBundle\Entity\Plan", inversedBy="users")
    * @ORM\JoinColumn(columnDefinition="INT(11) default '1'")
    */
    private $plan;
 
    /**
     * Constructor
     */
    public function __construct()
    {
        parent::__construct();
    }
 
    /* ... */
}
Problème :
Je souhaiterai mettre une valeur par défaut (un int de valeur 1, représentant la première entrée de la table plan) dans la colonne plan_id de la table user à la création d'un utilisateur.

En espérant avoir été clair,
Merci d'avance.