Bonjour,
J'ai une entity user qui contient un attribut refPosition qui est une autre entity.
J'essaie de créer un user à la main, via la lecture des infos dans un fichier.
Lorsque je veux valider mon user j'ai une erreur qui me dit "This value should be a valid number." Quand je regarde le contenu du retour de mon validate, apparememnt il bloque sur ce refPosition. Et je ne comprend pas pourquoi.
Voici le code :
La définition du user :
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
{
    /**
     * @var \RefJobPosition
     *
     * @ORM\ManyToOne(targetEntity="RefJobPosition")
     * @ORM\JoinColumns({
     * @ORM\JoinColumn(name="refpos", referencedColumnName="__id")
     * })
     * @Assert\Valid
     * @Assert\Range(
     *      min = "1",
     *      max = "12",
     *      minMessage = "The refpos field must be at less {{ limit }}",
     *      maxMessage = "The refpos field must be less than {{ limit }}"
     * )
     */
    private $refpos;
...
}
Dans mon code je récupère l'objet jobposition et je l'affecte
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
                    $refpos = $controller->getDoctrine()
                        ->getRepository('TMBundle:RefJobPosition')
                        ->findOneById($worksheet->getCell('G'.$row)->getValue());
                    $user->setRefpos($refpos);
Quand je fais un var_dump($user) je vois bien que j'ai un objet refPosition dans le champ refpos de mon user
Ensuite quand je fais un $validator->validate($user) il me sort mon erreur.
Si je mets null au lieu d'un objet refposition, ca passe.
Je ne sais plus...
Merci de votre aide.