Bonjour,

Je n'arrive pas afficher des champs d'un formulaire imbriqué.
Le formulaire client affiche bien les champs de CustomerType mais je n'arive pas à afficher 2 champs venant de ville (villeCode postal,villeNom),

CustomerType:
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
22
23
24
25
26
27
28
29
30
31
32
 
class CustomerType extends AbstractType
{
    /**
     * {@inheritdoc}
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('nom', null, array(
                'label' => 'Nom',
                'required'   => true,
                'attr' => array('class' => 'form-control col-md-7 col-xs-12', 'data-validate-length-range' =>'3,20'),
            ))
 
...
->add('villesFranceFree',  New VillesFranceFreeType() )
Message erreur : Expected argument of type "string", "AppBundle\Form\VillesFranceFreeType" given
 
 
ou
 
 
->add('villesFranceFree',  EntityType::class, [
                    "label" => "Ville",
                    // query choices from this entity
                    "class" => "AppBundle:VillesFranceFree",
                    // use the User.username property as the visible option string
                    'property'=>'villeNom'
                ]
            )
Message d erreur : property n'est pas reconnu
VillesFranceFreeType:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
class VillesFranceFreeType extends AbstractType
{
    /**
     * {@inheritdoc}
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('villeDepartement')
            ->add('villeNom')
            ->add('villeNomReel')
            ->add('villeCodePostal');
    }
Entity de customer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
    /**
     * @var \AppBundle\Entity\VillesFranceFree
     *
     * @ORM\ManyToOne(targetEntity="\AppBundle\Entity\VillesFranceFree", inversedBy="customers")
     * @ORM\JoinColumn(nullable=false)
     *
     */
    private $villesFranceFree;
Entity de ville
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 /**
     * @var \AppBundle\Entity\Customer
     *
     * @ORM\OneToMany(targetEntity="\AppBundle\Entity\Customer", mappedBy="villesFranceFree")
     */
    private $customers;
Un peut d'aide n'est pas de refus , précision : symfony 3

Merci
Drick