我有这个问题:
$postsTags = DB::table('post_tag')->where('tag_id', $id)->get();
if(count($postsTags) > 0) {
// Pluck the ID's from a users topics
$postIDs = $postsTags->pluck('post_id');
dd($postIDs);
$posts = Post::whereIn('id', [$postIDs])->get();
}
当我DD $ postIDs时,我明白了:
然后我做了我的whereIn查询,但问题是它只给了我一个结果,而不是它们的数组。
如果我这样做:
$postIDs[0]
我得到112,但我的结果应该是[111,112]。所以这不会起作用。
dd($postIDs->all());
答案 0 :(得分:0)
正如@Angad Dubey所说,我必须这样做:
$posts = Post::whereIn('id', $postIDs->all())->get();
这让我得到了我需要的结果。