Cakephp savefield()创建了新行或记录,而不是更新特定记录

Cakephp savefield()创建了新行或记录,而不是更新特定记录,cakephp,cakephp-1.2,Cakephp,Cakephp 1.2,我正在使用cakePHP 1.26。 我在一个有两个字段的表中得到了一些示例数据:{user_id,avatar} 我试图更新数据库中的旧记录: $who=$this->Session->read('user.user_id'); // 12 was retrieved in this case $c = "http://www.abc.com/myimage.gif"; $this->Test->User->user_id = $who; $result

我正在使用cakePHP 1.26。
我在一个有两个字段的表中得到了一些示例数据:{user_id,avatar}
我试图更新数据库中的旧记录:

 $who=$this->Session->read('user.user_id'); // 12 was retrieved in this case
 $c = "http://www.abc.com/myimage.gif";
 $this->Test->User->user_id = $who;
 $result = $this->Test->User->saveField('avatar',$c);
  if( $result==true){return "ok";}
当我检查数据库时,我看到一条新记录被删除了,但是用户id为12的旧记录根本没有更新

请帮助。

问题在这里:

$this->Test->User->user_id = $who;
假设您有正常的CakePHP DB约定,它应该是:

$this->Test->User->id = $who;