ARMbrain
@ARMbrain
Веб-Разработчик

Laravel — Many To Many | With | Как получить все данные сразу из всех отношениям?

Table - Users
-----------------
ID - USERNAME
1. Arno
2. Hinker

Table - Articles
------------------
ID - TEXT
1. Simple Text
2. Second Text
3. Fifty Text
4. Final Text

Table - article_user
-----------------------
ID - USER_ID - ARTICLE_ID
1. 1 - 1
2. 1 - 2
3. 2 - 3
4. 2 - 4

Я хочу получить все записи, которые пренадлижить юзерам 1,2.
И после этого хочу сделать WHERE для этих записей.

$users = User::whereIn('id', [1, 2]);

/*** НАПРИМЕР ***/
$users->articles();
или
$users->with('articles');

Резулатать нужно чтобы было такой
1. Simple Text
2. Second Text
3. Fifty Text
4. Final Text

Спасибо большое
  • Вопрос задан
  • 248 просмотров
Решения вопроса 1
@Novikofff
PHP Developer
Все описано в доке:
Пример:
// Retrieve all articles with at least one user where array of user id
$articles = Article::whereHas('users', function ($query) use ($users_id) {
    $query->whereIn('id', $users_id);
})->get();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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