カテゴリごとの商品を表示し、関連するコレクションから特定の商品を除外するには、with
を使用して、商品のカテゴリをクエリし、関連商品を熱心に読み込むことができます ただし、クロージャ方式を使用して、コレクションから目的の製品を削除します
$product = 10;
$category = Category::with(['products'=> function($query) use($product) {
$query->where('id','!=', $prodcut);
}])
->whereHas('products', function (Builder $query) use($product) {
$query->where('id', $product);
})->get();