Bonjour, voici rapidement mon schema.
Bref, "buttef" comporte plusieurs "buts" préenregistrés parmi lesquels le candidat choisit en remplissant le formulaire auto généré sur la base de la table "inscriptiontef". Dans le configure dudit formulaire (inscriptiontefForm), j'ai configuré le champ correspondant comme suit:
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 # TEF INSCRIPTION inscriptiontef: actAs: Timestampable: columns: nom: type: string(225) prenom: type: string(225) datenaissance: type: datetime lieunaissance: type: string(225) ... languematernelle: type: string(225) relations: buttef: class: buttef refClass: tefbut foreign: inscriptiontef #but tef buttef: columns: nom: string(225) # tef but: reuni inscriptiontef et buttef pour la relation plusieurs a plusieurs tefbut: columns: inscriptiontef_id: type: integer primary: true buttef_id: type: integer primary: true relations: inscriptiontef: foreignAlias: tefbut onDelete: cascade buttef: foreignAlias: tefbut onDelete: cascade
Donc à l'affichage, le formulaire présente bien les checkbox des choix de but disponible. Le problème, c'est qu'à la soumission du formulaire, ca renvoie l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 'buttef_list' => new sfWidgetFormDoctrineChoice(array('multiple' => true, 'expanded' => true, 'model' => 'buttef')),
D'après les recherches que j'ai faites, le problème proviendrait du moteur de la base de donnée, mais j'ai vérifié et toutes les tables sont en InnoDB comme cela devrait être. Alors je ne sais plus quoi faire. Quelqu'un connait-il la solution à ce problème ? Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`isfopnew`.`tefbut`, CONSTRAINT `tefbut_buttef_id_buttef_id` FOREIGN KEY (`buttef_id`) REFERENCES `buttef` (`id`) ON DELETE CASCADE)
Partager