2017-04-14 13 views
1

製品&の製品カテゴリ間の関連付けのためのマップテーブルを作成しました。私は以下のコードを使ってCollectionからProductオブジェクトを取得したい。Laravel Collectionフィルターを親データ

return $collection->products->product_categories()->get()->filter(function($item) use ($itemIds) 
       { 
        if(isset($item->pivot->parent->id)) 
        { 
         return $item->pivot->parent;  
        } 

       }); 

私はダンプして親を死ぬとProductオブジェクトを見ることができますが、商品を返そうとするとカテゴリデータが表示されます。

+0

モデルの関係をどのようにマッピングしましたか?だから基本的に特定のカテゴリの製品を手に入れたいのですが? – Indra

答えて

0

あなたはほとんどあります。カテゴリから製品データを返すだけで済みます。あなたのコードが動作していると仮定すると、ピボットから親を返すようにコレクションをマッピングするだけで済みます。

return $collection->products->product_categories()->get()->filter(function($item) use ($itemIds) 
         { 
          if(isset($item->pivot->parent->id)) 
          { 
           return $item->pivot->parent;  
          } 

         })->map(function($item){ 
          return $item->pivot->parent; 
         }); 
関連する問題