早上好,
我无法用$的hasMany,即使$ hasOne工作正常。
我有两个型号,分配和AssignmentGroup。 分配可以有一个AssignmentGroup但AssignmentGroup可以有很多作业。 这里有关系:
class Assignment extends AppModel {
public $belongsTo = array('AssignmentGroup');
}
class AssignmentGroup extends AppModel {
public $hasMany = array(
'Assignment' => array('foreignKey'=>'assignment_group_id),
);
}
以下是我正在运行的代码:
$this->AssignmentGroup->Behaviors->load('Containable');
$params = array(
'conditions' => array('AssignmentGroup.class_id' => $class_id),
'contain' => array('Assignment'),
);
$result = $this->AssignmentGroup->find('all', $params);
当我使用$ hasOne而不是$的hasMany我得到预期的结果。
$result = array(
'AssignmentGroup => array(
[several elements]
),
'Assignment' => array(
[more elements]
),
);
然而,当我使用$的hasMany,因为我需要,事情土崩瓦解。 查询没有联接。
$result = array(
'AssignmentGroup => array(
[several elements]
),
'Assignment' => array(),
);
任何人能解释这是怎么回事和/或提出一个解决办法? 谢谢您的帮助。