2013-05-08 2 views
1

이 문제는 순간에 내 마음을 불면 : 나는 다음과 같은 관계가 : 이제 Groups --> Intermediate Many-To-Many Table <-- Cities (모든 그룹이 여러 도시가 할당 할 수 있습니다)Laravel3 웅변은 :의 속성에 대한 쿼리는 다 대다 관계

를 내가 원하는 할당 된 도시가 ID X와 ID Y 인 모든 그룹 모델을 얻으려면 "보스턴과 뉴욕에 할당 된 모든 그룹을 가져와"라고 말하십시오.

Laravel 3의 Eloquent는 가능한가요?

대단히 감사합니다! Matthias

답변

2

내 경험에 따르면 where 절은 다 대 다 관계에서 작동하지 않습니다. 그러나 당신이 열심히로드한다면 그들은 일을합니다.

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

(정확) 위의 aowie1의 대답, 그것은 둥지 or_where 절에 자주 유용 확장 (당신이 쿼리를 확장을 모색하고 특히,이 논리적 합리적으로 비 또는 어디 조건) : 그냥 내가 upvoted했습니다 aowie1의 대답, 그것은 맞습니다으로 확대 다시

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

-이 중첩와 쿼리 나 조건을 :)에 대한 단지 몇 가지 추가 정보입니다은

+0

당신은 너무 sucka을 +1 얻을 – wesside