1

这让我发疯,我正在尝试做类似的事情:

$this->data = $this->Prox->read('proxy',$currentgetdata); 
                    $this->data['Prox']['checked'] = 2;
                    $this->Prox->save();

我有一个模型协会:

class Prox extends AppModel {
    var $name = 'Prox';
    var $primaryKey = 'id';
    ######## Define Model Associations #########
    var $belongsTo = array('Proxylink' => array('className' => 'Proxylink'));
}

但我得到一个错误:

SELECT `Prox`.`proxy` FROM `proxes` AS `Prox` LEFT JOIN `proxylinks` AS `Proxylink` ON (`Prox`.`proxylink_id` = `Proxylink`.`id`) WHERE `Prox`.`id` = '58.22.101.239:808' LIMIT 1

1054: Unknown column 'Prox.proxylink_id' in 'on clause'

我不明白为什么将其放入查询“LEFT JOIN proxylinksAS ProxylinkON ( Prox. proxylink_id= Proxylink. id)”中,并且我一直无法找到任何文档说明为什么要这样做,就好像它必须尝试包含一个非来自我的关联模型的字段和每个查询的当前模型的现有混合,我觉得这非常奇怪..任何关于我可以做些什么来让我的保存/更新查询工作的建议都值得赞赏。

4

1 回答 1

2

如果您有belongsTo关联,您的“代理”表必须有“proxylink_id”字段。

如果您不想加入关联模型,则必须将“递归”选项设置为-1.

于 2010-07-18T10:58:06.593 回答