CakePHP JOIN无法正常工作

时间:2015-05-05 08:42:33

标签: php cakephp join

我是cakephp的新手,我搜索了很多,但无法得到解决方案。我的查询没有返回任何错误,但它没有使用disposeTemp表加入区域表。

public function disposePreview(){

$this->loadModel('DisposeTemp');
$joins = array(
    array(
        'table' => 'zones',                                                                                
        'alias' => 'Zone',                                                                                
        'type' => 'inner',                                                                                                                                                                
        'conditions' => array('DisposeTemp.zone = Zone.id')
    )
);
$options = array(
    'conditions' => array('DisposeTemp.is_delete' => 0,'DisposeTemp.status'=>2),
    'order' => array('Item.item_category_id' => 'asc'),
    'joins' => $joins
);                                         
$getDT = $this->DisposeTemp->find('all', $options);
debug($getDT);
exit;
}

1 个答案:

答案 0 :(得分:0)

设置外键为false,因为您在DisposeTemp表中没有正确的外键命名约定,它应该是zone_id自动形成关系。

现在在你的情况下使用。

$joins = array(
    array(
        'table' => 'zones',                                                                                
        'alias' => 'Zone',                                                                                
        'type' => 'inner',       
        'foreignKey' => FALSE,                                                                                                                                                         
        'conditions' => array('DisposeTemp.zone = Zone.id')
    )
);