我已經檢查過this問題以及this也是如此。我試圖執行this問題中描述的模型。CakePHP如何在保存數據後獲取最新的自動遞增ID
我想要做的是,在消息控制器的添加功能上,在線程表中創建一個記錄(該表只有1個字段,它是主鍵和自動增量),然後取其id並將其插入到消息表以及我已有的用戶標識,然後將其保存在message_read_state和thread_participant表中。
這就是我想要的線程模型做:
function saveThreadAndGetId(){
//$data= array('Thread' => array());
$data= array('id' => ' ');
//Debugger::dump(print_r($data));
$this->save($data);
debug('id: '.$this->id);
$threadId = $this->getInsertID();
debug($threadId);
$threadId = $this->getLastInsertId();
debug($threadId);
die();
return $threadId;
}
$data= array('id' => ' ');
這條線從上面的函數將在線程表中的行,但我無法檢索ID。有什麼方法可以得到身份證,還是我錯誤地保存它?
起初我在做查詢的事情在消息控制器:
$this->Thread->query('INSERT INTO threads VALUES();');
但後來我發現,人工查詢lastId功能不工作,所以我恢復。
我必須保存什麼數據的任何其他名稱?該表只有一個ID,自動增量列,我已嘗試所有其他選項,這種方式它savs,但doent顯示最後插入的ID ... – shabby
我認爲更大的問題是,爲什麼你有一張桌子單列不存儲實際數據? – Dave
我只是在引用的問題中實現了架構,我已經修復了它,現在它的工作,但我想知道如何保存它,如果某種方式表有一列/字段 – shabby