2016-08-02 4 views
0

я получаю мои данные следующим образом: $completes = Complete::with(['answers', 'survey.location'])->orderBy('created_at', 'DESC')->get();Eloquent ограничение на отношения

Как я могу получить все completes где survey.location = 1?

Я пытался сделать это как Location::where()->with('completes') и т.д., но мне нужно, чтобы быть заказан completes без получения сгруппированных по location

+0

Какова связь между 'Complete' и' survey'? – Maraboc

+0

'complete' имеет' survey_id' – g3mini

+0

один 'опрос' может иметь много' завершений' – g3mini

ответ

2

Попробуйте это:

$completes = Complete::with('answers') 
         ->whereHas('survey', function ($query) { 
          $query->where('location','=',1); 
         }) 
         ->orderBy('created_at', 'DESC')->get(); 

Для получения более подробной информации посмотрите в Doc в разделе «Ограничивающие нагрузки» :)

+1

Сегодня вы мой герой :), забыли про 'whereHas' – g3mini

Смежные вопросы