Задать вопрос
@Qweqwe1234

Как создать связь 1 ко многим через 2 таблицы?

Добрый день, возможно ли и как организовать связь 1 ко многим через 2 промежуточные таблицы используя Active Record на Laravel 5.1?

Для большей ясности на примере из документации: laravel.com/docs/5.1/eloquent-relationships#has-ma...
Имеются таблицы страны, пользователи, посты. Хотим легко получать все посты принадлежащие определенной стране - все замечательно. Добавляем еще одну таблицу - комментарии к постам. Теперь хотелось бы получать комментарии принадлежащие постам определенной страны(то есть получить комментарии через таблицу постов с которой у нас есть связь через таблицу пользователей), возможно ли реализовать такую связь 'через через' или как лучше поступить? Комментарии нам нужны хотя бы для того что бы оценить насколько активно обсуждаются посты принадлежащие определенной стране, то есть к примеру получить количество комментариев к постам созданным пользователями определенной страны.
  • Вопрос задан
  • 247 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    PHP-фреймворк Laravel
    2 месяца
    Далее
  • Яндекс Практикум
    Фулстек-разработчик расширенный
    20 месяцев
    Далее
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
AmdY
@AmdY
PHP и прочие вебштучки
Было бы неплохо структуру таблиц посмотреть, а то сейчас непонятно в чём сложность и зачем какие-то странные связи
// комментарии принадлежащие постам определенной страны
Comments::whereHas('posts', function ($query) use($country) {
    $query->where('country', $country);
})->get();
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы