У меня есть несколько таблиц.Querying 3 tables mysql Laravel
- Конкурсы
- Записи
- Пользователи
Пользователь может подавать заявки на конкурс, пользователь может представить несколько записей на конкурс.
Мне нужно знать электронные письма пользователей, которые отправили запись на конкретный конкурс. Письма находятся в таблице пользователя.
Получение всех записей из конкурса не так сложно, я выполнить это:
$entries = Contest::find(1)->entries()->first();
Теперь у меня есть все записи, относящиеся к конкурсу с идентификатором 1 (например, использование). Теперь, как эффективно получить все электронные письма пользователей из таблицы моих пользователей?
Таким образом, три таблицы, которые связаны, я начинаю с идентификатора конкурса, а затем получаю все записи от этого конкурса, а затем должны получить все электронные письма пользователей, которых я еще не смог получить.
Надеюсь, это имеет смысл. Если нет, спросите прочь!
Как насчет [загруженной загрузки] (http://four.laravel.com/docs/eloquent#eager-loading)? Например: 'Contest :: with ('entries.users') -> get() -> first();' –