2016-05-16 38 views
0

我的代碼:保存不cakeph工作時都還好

$this->PackageCustomer->id = $customer_id; 
$data['PackageCustomer'] = array(
    'shipment' => 2, 
    'comments' => $this->request->data['Ticket']['content'], 
    'shipment_equipment' => $this->request->data['Ticket']['shipment_equipment'], 
    'shipment_note' => $this->request->data['Ticket']['shipment_note'], 
    'issue_id' => $this->request->data['Ticket']['issue_id'] 
    ); 
    pr($data); exit; 
    $this->PackageCustomer->save($data['PackageCustomer']); 
    //var_dump($this->PackageCustomer->invalidFields()); 
    // pr($this->PackageCustomer->error); 
    echo $this->PackageCustomer->getLastQuery(); exit; 

我檢查數組$的數據。數據正在恢復正常。並且getLastQuery函數是:

function getLastQuery() { 
    $dbo = $this->getDatasource(); 
    $logs = $dbo->getLog(); 
    $lastLog = end($logs['log']); 
    return $lastLog['query']; 
} 

它是在appModel中定義的。我正在使用cakephp 2.6.9。但最後一個查詢是:COMMIT,這沒有任何意義。我檢查我的模型約定。沒關係。現在我的代碼中有什麼問題?

+1

你爲什麼認爲提交是一個錯誤?請看看整個sql日誌而不是最後一個條目。 – AD7six

回答

0

試試這個::

$this->PackageCustomer->id = $customer_id; 
$data['PackageCustomer'] = array(
    'shipment' => 2, 
    'comments' => $this->request->data['Ticket']['content'], 
    'shipment_equipment' => $this->request->data['Ticket']['shipment_equipment'], 
    'shipment_note' => $this->request->data['Ticket']['shipment_note'], 
    'issue_id' => $this->request->data['Ticket']['issue_id'] 
    ); 
    pr($data); exit; 
    $this->loadModel('PackageCustomer'); 
    $this->PackageCustomer->save($data['PackageCustomer']); 
    //var_dump($this->PackageCustomer->invalidFields()); 
    // pr($this->PackageCustomer->error); 
    echo $this->PackageCustomer->getLastQuery(); exit; 

如果上面的代碼不工作,我需要以下回答,進一步幫助...

我需要你可以確認以下更多位信息:

  • 你想保存的表的名稱是什麼?
  • 與您要保存的表相關的類的名稱是什麼?
  • 您是否正在編輯或在此表中創建新記錄?