2017-03-05 94 views
1

我有poststags表通過post_tags表相關。我想要獲取所有用戶信息中的所有標籤。假設一個用戶有3個帖子,那麼我想從他們中的3個獲取所有標籤,而不在用戶帖子中循環,以獲得每個帖子的個人相關標籤,就像加入+獨特但可能在Eloquent中有方法使其變得容易。謝謝,讓我知道如果我的問題不清楚或重複。從所有記錄中獲取所有相關的多對多而不是每條記錄laravel

回答

1

使用whereHas()

$tags = Tag::whereHas('posts', function($q) use($userId) { 
    $q->where('user_id', $userId); 
})->get(); 
+0

'user_id'沒有發現,因爲職位表從來沒有在查詢構建器調用,所以沒有user_id列。 –

+0

@AnggaAriWijaya如果您在'posts'表中沒有'user_id',這意味着您沒有正確定義Eloquent關係。 –

+0

我有,但你的代碼,它只是返回一個記錄。 –

相關問題