我在我的控制器中有bellow登錄功能,並且試圖將登錄日期/時間保存到用戶數據庫表last_login下,這是一個DATETIME字段,登錄工作正常,但字段從來沒有得到填充..什麼可能會阻止這個問題或如何解決什麼應該得到輸出的想法?CakePHP在登錄時保存日期/時間
public function login() {
$this->layout = 'login';
if ($this->request->is('post')) {
if ($this->Auth->login()) {
$this->User->id = $this->Auth->user('id'); // target correct record
$this->User->saveField('last_login', date(DATE_ATOM)); // save login time
$this->redirect($this->Auth->redirect());
} else {
$this->Session->setFlash('Invalid username or password, try again', 'default', array('class' => 'warning'));
}
}
現在還沒有updati該字段,我甚至試圖改變字段爲varchar,所以它會保存一些東西,但它永遠不會被觸及..和cakephp永遠不會輸出任何錯誤。 – medoix
@medoix將調試級別設置爲2並檢查對'saveField()'調用生成的SQL查詢。不要忘記評論'$ this-> redirect()',否則你將看不到'login'動作的SQL查詢。 – nIcO
我禁用了重定向,它仍然重定向,我甚至放置了一個死亡('設置日期'); saveField後,它甚至沒有得到它,我發現。它顯示爲如果($ this-> Auth-> login()){在IF語句中只是立即重定向而不做任何事情... – medoix