2013-01-25 62 views
0

嘿,我是CakePHP的新手,所以請在這裏幫助我,我無法將單個表單數據保存在兩個表中。以下是我的代碼。CakePHP:數據沒有保存在多個表中

主要型號代碼:

var $hasMany = array('Option'); 

控制器代碼:

public function add() 
{ 
    if (!empty($this->request->data)) 
    { 
     $this->Question->saveAll($this->data); 
    } 
} 

查看文件:

echo $this->Form->create('Question'); 
echo $this->Form->input('question'); 
foreach (range(0,2) as $index) { 
    echo $this->Form->input('Option.'.$index.'.option'); 
} 
echo $this->Form->end('Save Poll'); 

請電話我在哪裏我錯了。數據僅在單個表中插入,而不在其他表中。

+0

pr($ this-> data)有選項字段? – kicaj

+0

是的..數組包含選項字段.. – Vicky

回答

0

試試這個,如果它的工作。

<?php 

if ($this->Question->save($this->data)) 
{ 
    $this->Question->Option->saveAll($this->data['Option']); 
    $this->Session->setFlash(__('Question has been successfully edited.', true), 'default',array('class'=>'alert alert-success')); 
    $this->redirect(array 
    (
     'controller' => 'questions', 
     'action'  => 'index' 
    )); 
    exit; 
}
+0

它顯示錯誤... 錯誤:調用一個非對象的成員函數saveAll()... – Vicky

+0

確定問題和選項模型是不相關的.. ??? 問題必須與使用有關許多和選項必須相關使用屬於 –