Задать вопрос
soloman
@soloman
web-dev

Как получить общие сущности связанной модели (многие-ко-многим)?

Здравствуйте! Немного застрял, прошу помощи,
Есть пост, есть теги, связь "многие-ко-многим";

Вопрос
- как получить все и только те теги, которые есть во всех постах
- или получить общие теги постов
- или к примеру сделать такую выборку, всех постов с тегами (максимальными связями) и сортировкой по убыванию количества их связей постами
- или получить пересечение всех множеств тегов постов

псевдокод
Tag::whereHas('posts', function($builder) {
    $builder->count()
        ->sortBy('...')
        ->limit(5);
})
    ->get();
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@MSAFT
Нет необходимости делать sortBy, get во вложенном запросе.

...получить все и только те теги, которые есть во всех постах


Tag::whereHas('posts')->get()->sortBy('id'); // Коллекция


Посчитать кол-во:
Tag::whereHas('posts')->count(); // 100
Ответ написан
Ваш ответ на вопрос

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

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