【发布时间】:2025-12-05 07:40:02
【问题描述】:
我阅读了Containable 部分,但没有找到一个明确的示例来用containable 查询替换关于habtm 关系的内部连接查询。示例:
型号
Student hasAndBelongsToMany Teacher
Teacher hasAndBelongsToMany Student
查询
$joins = array(
array(
'table' => 'teachers_students',
'type' => 'INNER',
'conditions' => array(
'teachers_students.teacher_id' => $teacherId,
'teachers_students.student_id = Student.id'
)
)
);
$data = $this->find('all', array('joins' => $joins));
评论
-
hasAndBelongsToMany属性在每个模型中设置。 - 伪变量
$this参考模型:class Student -
$teacherId是一个参数(有一个过滤器可以显示属于某个特定教师的学生)。
我在寻找什么
为了能够在没有joins 的情况下编写相同的查询,请使用contain。类似的东西:
$contain = array(
'Teacher' => array(
'conditions' => array('???' => '???')
)
);
$data = $this->find('all', array('contain' => $contain));
【问题讨论】:
标签: cakephp cakephp-2.0 has-and-belongs-to-many containable