我正在使用带有mysql数据库的cakephp 1.3,而引擎是MYISAM,我在关系中遇到问题。我有两个名为Organizatio
n和OrgClasses
的表格,这两个表格与mbo_studio_id
相关联,这两个表格在两个表格中都很常见。
组织
Id(PK)
,name
,mbo_studio_id
org_classes
id(PK)
,name,date
,mbo_studio_id
我正在尝试以mbo_studio_id
的条件获取数据,但它会通过OrgClasses
的主键添加另一个条件。
var $belongsTo = array(
'OrgClass' => array(
'className' => 'OrgClass',
'foreignKey' => 'mbo_studio_id',
'conditions' => array('OrgClass.mbo_studio_id' => 'Organization.mbo_studio_id'),
'order' => 'OrgClass.date DESC',
'dependent' => false,
)
);
我得到以下查询
SELECT `Organization`.`id`, `Organization`.`name, `Organization`.`mbo_studio_id`, `OrgClass`.` id`,`OrgClass`.`mbo_studio_id`, `OrgClass`.`name`, `OrgClass`.`date`
FROM `organizations` AS `Organization`
LEFT JOIN `org_classes` AS `OrgClass` ON (`Organization`.`mbo_studio_id` = `OrgClass`.`id` AND `OrgClass`.`mbo_studio_id` = Organization.mbo_studio_id)
此处我不想在查询中 Organization
。mbo_studio_id
= OrgClass
。id
条件。
由于
答案 0 :(得分:5)
然后你需要将foreignKey设置为false:
'foreignKey' => false,
这样它只会使用您的自定义条件。