2011-09-18 47 views
0

由於我找不到很多關於的信息,同時保存了兩個型號,其中有HABTM關係同時保存多個HABTM機型

我有一個訂閱表單,訂閱在線兒童。父母可以同時輸入多個孩子和多個父母。所以JS可以添加更多的文本框,並使其有效蛋糕(Model.number.field

  1. 我要驗證孩子們和經理(不能使用父模型的名字,所以家長=在這種情況下,經理) :

    if($this->Child->saveAll($this->data['Child'], array('validate' => 'only')) 
        && ($this->Manager->saveAll($this->data['Manager'], array('validate' => 'only'))) 
    ) 
    { 
        debug('form is valid!'); 
    } 
    

    此代碼僅適用於只有1個孩子和1個管理員(=父母)的情況。

  2. 如何在同一時間將這兩個模型與HABTM關係一起保存?

這是值$this->data的調試:http://pastebin.com/m6dtBzga

回答

1

從文檔:

用於保存單個模型的多條記錄,$數據需要的是這樣記錄的數字索引數組:

Array 
(
    [Article] => Array(
      [0] => Array 
       (
          [title] => title 1 
         ) 
      [1] => Array 
       (
          [title] => title 2 
         ) 
       ) 
) 

保存上述$ data數組看起來像這樣的命令:

$this->Article->saveAll($data); 

http://book.cakephp.org/view/1031/Saving-Your-Data