Bonjour,
J'essaye de mettre en place un formulaire qui utilise le principe des embed forms.
Voici la structure (simplifiée):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
Table1:
  actAs: [Timestampable]
  columns:
    table2Id: { type: integer }
    etc...
  relations: 
    Table2: { local: table2Id, foreign: id, foreignAlias: Table1 }
Je voudrais créer un objet Table2 et "en même temps" l'objet Table1 lié, j'ai donc pensé à utiliser embed forms.
Cependant je n'arrive pas à lier les deux formulaires...
Voici ce que je fais dans mon Table1Form.class.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
//Dans la fonction configure() de Table2Form.class.php
 
if(!$this->getObject()->isNew()){
          $objTable1 = Doctrine::getTable('Table1')->findOneByTable2Id($this->getObject()->getId());
          $embedForm = new Table1Form($objTable1);
      }
      else {
          $embedForm = new Table1Form();
      }
 
      $this->embedForm('myEmbedForm', $embedForm);
Ce code fonctionne lorsque je crée des objets séparément (directement en base par exemple) et que je fais une édition.
Par contre pour une création cela ne fonctionne, ce qui est logique vu que mon si mon objet est nouveau je n'ai pas encore d'Id à assigner à mon second objet...
Je dois donc avoir oublié de binder les deux formulaires quelque part...

Avez vous des idées ? Merci d'avance.