2011-06-07 114 views
0

我有更新cakephp中用戶數據的問題。更新數據庫中的記錄時出現問題

當我提交表單我在這 - $此數據>數據:

Array 
(
    [User] => Array 
     (
      [first_name] => Dusan 
      [last_name] => Stojanovic 
      [native_language_id] => 25 
     ) 
) 

但是,當我嘗試更新它:

$this->User->id = $id; 
$this->User->save($this->data) 

模式沒有被保存,因爲驗證。他們嘗試驗證$ this-> data數組中不存在的字段(如無效密碼,電子郵件等)。我如何解決這個問題,以便我只更新$ this-> data數組中的字段?

回答

1

properly do this您應該驗證規則on選項設置爲create只和/或設置requirefalse

對於和quickfix,供應領域的$fieldlist要保存:

$this->User->save($this->data, true, array('first_name', 'last_name', 'native_language_id')); 
+0

謝謝,這是我需要的。實際上,我需要從驗證中移除所需內容並將其設置爲allowEmpty。 – Dusan 2011-06-07 08:35:59

0

,你可以這樣做:

$this->data['User']['id'] = $id 
因爲[ '身份證']的CakePHP的

識別數組將更新數據集並且不會創建新數據集的數據。

相關問題