Bonjour
Je vous explique
J'ai un formulaire d'inscription pour des étudiants et à son inscription, un étudiant peut ajouter les langues qu'il connait en les choisissant dans une liste.
Dans mon formulaire, j'ai un champ langue avec une liste des langues (ajoutées en bdd par l'admin) et un bouton "ajouter langue" pour ajouter un nouveau champ pour une seconde langue par exemple.
Voici les codes
Entité Etudiant
Dans le formtype de l'étudiant j'ai ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 /** * @ORM\ManyToMany(targetEntity = "Gco\AdminBundle\Entity\Langue" ) * @ORM\JoinColumn(nullable=false) */ private $langues;
Et voici FormLangue.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ->add('langues', 'collection', array('type' => new FormLangue(), 'allow_add' => true, 'allow_delete' => true))
Je me suis inspiré d'un tutoriel pour le jquery et le formulaire trouvé sur un autre site.
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 FormLangue extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('langue','entity', array( 'class' => 'GcoAdminBundle:Langue', 'property' => 'nom')) ; } public function getName() { return 'langue'; } }
A l'exécution, j'ai bien le bouton et la liste me permettant de choisir la langue. Mais lorsque je valide, j'ai cette erreur :
Je ne comprends pas mon erreur, pourriez-vous m'aider svp ?Warning: spl_object_hash() expects parameter 1 to be object, array given in vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php line 1358
at ErrorHandler ->handle ('2', 'spl_object_hash() expects parameter 1 to be object, array given', '\vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php', '1358', array('entity' => array('langue' => object(Langue)), 'assume' => '2'))
Partager