2010-08-10 4 views
1

J'ai deux classes avec une relation un-à-plusieurs. Et je veux faire une forme imbriquée pour entrer dans un objet et d'autres qui y sont liés. Mais quand j'enregistre le formulaire, la clé qui référence ma classe principale n'est pas mise à jour avec la clé de la classe principale. Cependant les autres clés sont créées.symfony: Problème avec la méthode 'embedRelation'

Mon schéma:

Enfant: 
    connection: doctrine 
    tableName: enfant 
    columns: 
    id: 
     type: integer(2) 
     fixed: false 
     unsigned: true 
     primary: true 
     autoincrement: true 
    nudparent: 
     type: string(20) 
     fixed: false 
     unsigned: false 
     primary: false 
     notnull: false 
     autoincrement: false 
    relations: 
    Locataire: 
     local: nudparent 
     foreign: nud 
     type: one 
Locataire: 
    connection: doctrine 
    tableName: locataire 
    columns: 
    nud: 
     type: string(20) 
     fixed: false 
     unsigned: false 
     primary: true 
     autoincrement: false 
    nbenfants: 
     type: integer(1) 
     fixed: false 
     unsigned: true 
     primary: false 
     notnull: false 
     autoincrement: false 
    relations: 
    Bail: 
     local: nud 
     foreign: locataire 
     type: many 
    Enfant: 
     local: nud 
     foreign: nudparent 
     type: many 
    Refus: 
     local: nud 
     foreign: nud 
     type: many 

Et faisant forme:

$subForm = new sfForm(); 
for ($i = 0; $i < 2; $i++) 
{ 
    $enfant = new Enfant(); 
    $enfant->Locataire = $this->getObject(); 

    $form = new EnfantForm($enfant); 

    $subForm->embedForm($i, $form); 
} 
$this->embedForm('new', $subForm); 
+0

Pourriez-vous poster le schéma Locataire s'il vous plaît. – johnwards

+0

+1, j'ai le même problème avec beaucoup de formes, et je dois faire quelque chose comme "parent-> setChild ($ child);" et sauvez le parent de nouveau pour le faire fonctionner. Je pense que cette sauvegarde automatique fonctionne si l'enfant fait référence au parent mais pas l'inverse. – greg0ire

+0

@johnwards: J'ai déjà posté le schéma Locataire, je ne vois pas ce que vous voulez ... @gregOire: Dans les tutoriels, j'ai vu qu'on peut le faire, mais quand je fais la même chose, ça ne marche pas t travail – Elorfin

Répondre