2014-08-30 4 views
1

Я ладить медленно, но верно с Laravel/красноречивы, но я сейчас озадачен:Красноречивый - два отношения в одном?

записей в таблице:

id 
user_id 
group_id 
content 

пользователи Таблица

id 
faculty_id 
name 

группа Таблица:

id 
name 

преподавательский стол

id 
name 

Так записи связаны с пользователями и группами, а пользователи связаны с факультетами - Я настроил основные отношения без проблем, и это дает мне возможность найти все записи пользователей из определенного факультета:

факультет Модель:

public function entries() 
{ 
return $this->hasManyThrough('Entry','User'); 
} 

контроллер:

Faculty::find(Faculty-ID-here)->entries; 

Однако мне теперь нужно найти записи пользователей, которые принадлежат определенному факультету И из определенной группы, и я не знаю, как написать эту комбинацию в «Красноречии».

Надеюсь, что имеет смысл! Какие-либо предложения?

ответ

0

Что-то вроде:

Entries::whereHas('user', function($q) { 
      $q->where('faculty_id', $facultyID); 
     }) 
     ->where('group_id', $groupID) 
     ->get(); 

Предполагая, что вы настроили ваши отношения 'пользователь'.

+0

Большое вам спасибо! Все время изучать новые вопросы о Laravel – GremlinPots

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