使用cakephp: 我正在尝试更新客户信息和客户链接的地址。 这样Customer.address_id = Address.id和
客户模式
$belongsTo = 'Address';
来自customers_controller
function profile($id = null)
{
if (empty($this->data['Customer']))
{
$this->Customer->id = $id;
$this->data = $this->Customer->read();
}
else
{
$this->Customer->id = $this->data['Customer']['id'];
$this->Customer->read();
$this->Customer->save($this->data['Customer']);
$this->Customer->Address->save($this->data['Address']);
}
}
客户正确更新,但地址始终会插入新行。如何更新此地址?
答案 0 :(得分:1)
首先,拿走第11和第12行,这些都没有用处。确保您的视图包含Customer.id和Address.id的表单元素。如果你只是更新地址,你也不需要第13行。简短的回答是,如果缺少主键,Cakephp将插入行而不是更新。在您的情况下,这意味着[地址] [id]。