小编Rog*_*lan的帖子

Cakephp 3不在查询中

我认为这是一种常见的模式,但我找不到优雅的CakePHP方式.我们的想法是从列表中删除已经选择的值.要使用Cake书中的示例:

table Students (id int, name varchar)
table Courses (id int, name varchar)
table CoursesMemberships (id int, student_id int, course_id int, days_attended int, grade varchar)
Run Code Online (Sandbox Code Playgroud)

我想要做的就是创建一个查询,该查询返回给定学生尚未注册的课程,最有可能填充选择下拉列表.

如果我没有使用Cake,我会做类似的事情

select * from Courses where id not in 
    (select course_id from CoursesMemberships where student_id = $student_id)
Run Code Online (Sandbox Code Playgroud)

或者可能是等效的NOT EXISTS子句,或外连接技巧,但你明白了.

我很难在Cake中如何优雅地做到这一点.在我看来,这将是一个普遍的需求,但我已经研究了一段时间,并尝试了一些查询的想法,但无济于事.

orm cakephp cakephp-3.0

7
推荐指数
3
解决办法
7652
查看次数

标签 统计

cakephp ×1

cakephp-3.0 ×1

orm ×1