2013-05-08 54 views
1

这个问题吹拂我的心在那一刻: 我有以下关系: Groups --> Intermediate Many-To-Many Table <-- Cities(每组可以分配多个城市)Laravel3雄辩:在查询的属性许多一对多的关系

现在我想以获得所有分配城市为ID X和ID Y的所有组模型。 赞成说“让我所有分配到波士顿和纽约的团队”

Laravel 3的口才有可能吗?

非常感谢! Matthias

回答

2

根据我的经验,where子句在多对多关系中不起作用。但是,如果你急于加载它们,它们会发挥作用。

Group::with(array('cities' => function($q) { 
    $q->or_where('id', '=', X); 
    $q->or_where('id', '=', Y); 
})->get(); 
2

扩展上述aowie1的回答(这是正确的),但是这是筑巢or_where条款(因为这使得逻辑意义,特别是如果你正在寻找与扩大查询非或-where条件):

Group::with(array('cities' => function($q) { 
    $q->where(function($where) { 
     $where->or_where('id', '=', 'x'); 
     $where->or_where('id', '=', 'y'); 
    }); 
})->get(); 

再次,只是扩大aowie1的答案,我已经upvoted,因为它是正确的 - 这仅仅是关于与嵌套查询或条件:)一些额外的信息

+0

你得到一个+1太,sucka – wesside 2013-05-09 03:16:33