2016-12-09 13 views
2

私は多対多(ピボットテーブルを含む)というモデルを持っています。私は特定のカテゴリに属する​​製品だけを引き出す必要があります。私はこれをしようとしているが、それは私にすべての製品を提供します:私は、クエリの外で定義された$idを入れたときにそれを認識しないためwhereカテゴリーに属する製品のIDを取得する

$products = User::whereHas('category', function ($query) { 
    $query->where('id','1'); 
})->get(); 

1は単なるテストのためです。

+0

してください。 –

+0

これを試してください: '$ products = User :: whereHas( 'category'、function($ query){ $ query-> where( 'id'、 '='、 '1'); })> get ); ' –

+0

@IndrasinhBihola'( 'id'、 '='、 '1') 'は' where( 'id'、 '1')と同じです。 –

答えて

0

これを試してください。

$products= User::whereHas('category', function ($query) use ($id) { 
      $query->where('id', $id); 
     })->get(); 
+0

これは '$ id'をクロージャスコープに渡すだけですが、OP問題を解決するものではありません。 –

+0

nop空の文字列を返します – OunknownO

+0

あなたは間違った方法で製品にアクセスしようとしています。製品、カテゴリ、ユーザーの関係を表示できますか? –

関連する問題