Sauvegarder la relation produite par embedRelation
Bonjour,
Dans mon projet, je dois permettre la création de fiche d'intervention.
Jusque là pas de problème.
Ma fiche s'enregistre correctement avec toutes les informations necessaire.
Pour l'instant j'ai "triché" sur une étape de mon formulaire.
En effet dans mon formulaire j'ai deux zones différentes qui doivent enregitrer leur données dans deux tables différentes.
J'ai "triché" en ne faisant qu'une seule table, mais il me faut aujourd'hui établir le principe convenablement.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
intervention:
actAs: [Timestampable]
options:
collate: utf8_unicode_ci
charset: utf8
columns:
probleme : { type: string(255) }
cause : { type: string(255) }
solution : { type: string(255) }
batiment : { type: string(255) }
atelier : { type: string(255) }
section : { type: string(255) } |
De quoi s'agit-il ?
Mon formulaire est constitué d'un fieldset comprenant les détails de l'intervention, puis d'un second fieldset représentant la localisation.
En découle donc une table Intervention lié a la table localisation par la valeur localisation_id.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
intervention:
actAs: [Timestampable]
options:
collate: utf8_unicode_ci
charset: utf8
columns:
probleme : { type: string(255) }
cause : { type: string(255) }
solution : { type: string(255) }
localisation_id : { type: integer, notnull: true }
relations:
localisation: { local: localisation_id, foreign: id }
localisation:
actAs: [Timestampable]
options:
collate: utf8_unicode_ci
charset: utf8
columns:
batiment : { type: string(255) }
atelier : { type: string(255) }
section : { type: string(255) } |
En creusant j'ai trouvé l'embedRelation. Je l'ai donc ajouté à mon InterventionForm.class.php
Code:
1 2
|
$this->embedRelation('localisation'); |
J'obtiens bien le resultat voulu a savoir un tableau avec mes champs définies.
Mais je n'arrive pas à passer le validator il m'indique que ma valeur localisation_id est Required
Je pense que j'oublie une étape mais je n'arrive pas a trouver la solution.
Pourriez-vous m'aider ?
Etant qu'un simple débutant en symfony et n'ayant pas une grande connaissance de la POO. Je suis largué...