У меня есть данные с таблицей categories
.
У меня есть две категории, Категория A
и Категория B
.
У меня также естьpost
таблица с post
назначена для category
.
Теперь я могу получить все post
и category
$posts = PostGroup::whereIn('name', ['A', 'B'])
PostGroup
файл имеет
public function posts() {
return $this->hasMany('App\Dict');
}
Хорошо, теперь, когда я вызываю код выше и получаю следующее:
Collection {#301 ▼
#items: array:2 [▼
0 => PostGroup {#289 ▶}
1 => PostGroup {#302 ▶}
]
}
Я могу сделать foreach()
или я могу получить posts
$posts = PostGroup::whereIn('name', ['A', 'B'])
$posts[0]->posts->where('group_id', 'A');
Как можно избежать foreach и выполнить поиск в коллекции $posts
, чтобы найти группу A
, например:
$posts->where('group_id', 'A')->posts;