Задать вопрос
@almassar
web программист

Как в Laravel вытащить данные(товары, категории) через pivot таблицу?

Есть три таблицы products (товары), categories (категории) и связывающая их pivot таблица.
Один товар может находиться одновременно в двух категориях. Как вытащить все товары которые находятся в определенных категориях? То есть имеется массив id category [1, 5, 31 ] и по нему нужно вытащить все товары которые находятся в этих 3 категориях

Хотел сделать так:

categoryIds = [1, 4, 10];
 $products = Product::with(['categories' => function ($query) use ($categoryIds) {
            $query->whereIn('category_id', $categoryIds);
}])->paginate();
  • Вопрос задан
  • 507 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Loftschool
    Комплексное обучение PHP
    6 недель
    Далее
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Skillbox
    Профессия PHP-разработчик с нуля до PRO
    7 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@mShpakov
У вас есть связь описанная в модели категорий
Достаете категорию и по названию связи (например products) получите все продукты
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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