从CakePHP中的联接表获取数据
我需要从assurances_Indicator_数据中获取数据(与该指标数据相关的所有保证id),我不知道在CakePHP中连接数据的正确方法。我的代码不起作用,它返回一个空数组 指示灯型号:从CakePHP中的联接表获取数据,cakephp,join,cakephp-2.0,has-and-belongs-to-many,Cakephp,Join,Cakephp 2.0,Has And Belongs To Many,我需要从assurances_Indicator_数据中获取数据(与该指标数据相关的所有保证id),我不知道在CakePHP中连接数据的正确方法。我的代码不起作用,它返回一个空数组 指示灯型号: public $hasAndBelongsToMany = array( 'Assurance' => array( 'className' => 'Assurance', 'joinTable' => 'assuranc
public $hasAndBelongsToMany = array(
'Assurance' => array(
'className' => 'Assurance',
'joinTable' => 'assurances_indicator_data',
'foreignKey' => 'indicator_datum_id',
'associationForeignKey' => 'assurance_id',
'unique' => true,
'conditions' => '',
'fields' => '',
'order' => '',
'limit' => '',
'offset' => '',
'finderQuery' => '',
'deleteQuery' => '',
'insertQuery' => ''
)
);
function getIndicatorDataAssurance($indi_id){
$assuranceData = $this->find('all',array(
'joins' => array(
array('table' => 'assurances_indicator_data',
'type' => 'INNER',
'conditions' => array(
'AssurancesIndicatorData.indicator_datum_id' => $cun_indi)))));
return $assuranceData;
}
}
在CakePhp中连接表的最简单方法是必须在数据库中创建每个表示表的模型。 在下面的示例中,您可以将其修改为表和模型的名称:
class ModelOne extends AppModel{
public $belongTo = array('ModelTwo');
}
class ModelTwo extends AppModel{
public $hasMany = array('ModelOne');
}
然后,如果在控制器中查询这些模型中的任何一个,那么响应数组应该包含来自这两个表的数据