mon formulaire UtilisateurProfil
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
public function buildForm(FormBuilder $builder, array $options)
    {
        $builder
            ->add('nom')
            ->add('prenom')
            ->add('email')
            ->add('tel_mobile')
            ->add('nationalite') //<-ici le champ de type select
mon entity UtilisateurProfil
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
    /**
     * @ORM\ManyToOne(targetEntity="Nationalite", inversedBy="utilisateurProfils")
     * @ORM\JoinColumn(name="nationalite_id", referencedColumnName="id")
     */
    private $nationalite;
 
    public function getNationalite()
    {
        return $this->nationalite;
    }
mon entity nationalite
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
/**
     * @ORM\OneToMany(targetEntity="UtilisateurProfil", mappedBy="nationalite")
     */
    private $utilisateurProfils;
 
    public function __construct()
    {
        $this->utilisateurProfils = new ArrayCollection();
    }
Lorsque j'affiche l’édition du formulaire:
Le menu déroulant nationalité plante dès l'instant ou il existe un enregistrement dans la table (ex: id => 1, nom => 'francais')

message d'erreur (concerne l'affichage du menu déroulant):nationalite):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Entities passed to the choice field must have a "__toString()" method defined (or you can also override the "property" option).