CakePHP字段未更新

CakePHP字段未更新,cakephp,cakephp-1.3,Cakephp,Cakephp 1.3,我有一个很奇怪的问题。我正在用cakephp从表单进行标准保存,一点也不疯狂: $this->Ride->read(null,$id); $ride = $this->Ride->data; $this->Ride->set(array( 'assigned' => 2, 'pickup_driver_id' => $driver['UserDriver']['id']

我有一个很奇怪的问题。我正在用cakephp从表单进行标准保存,一点也不疯狂:

$this->Ride->read(null,$id);
$ride = $this->Ride->data;

$this->Ride->set(array(
                'assigned' => 2,
                'pickup_driver_id' => $driver['UserDriver']['id']
            ));

$this->Ride->save()

但是,每次除指定的字段外,所有字段都会更新。数据库中分配的是tinyint(2)。我试着不去验证…等等。任何建议都很好!提前谢谢你。

我建议你仔细检查一下你的模型定义,看看有没有什么有趣的地方。关闭验证将是我的第一个建议,但你说你已经涵盖了这一点,所以我不会对此发表任何意见。(咧嘴笑)

另外,检查$this->Ride->save()方法的返回值,它应该是true。如果没有,请检查是否存在以下错误

if(!$this->Ride->save()){
    debug($this->Ride->validationErrors); die();
}

谢谢你的回复。是的,我试过验证错误。奇怪的是,$this->Ride->save()很好,所有字段都会更新,数据库中分配的字段除外。皮卡驱动程序id实际上是新的值,以及其他设置的字段,除了已分配的字段之外……结果表明CakePHP将tinyint(1)视为虚拟布尔值,并且只将0或1保存到该字段。我将其更改为tinyint(2),但没有清除app/tmp/models缓存,因此在我更改之前,它仍然无法工作。在这里找到它: