私は3つのテーブルを持っており、結果を得るにはピボットテーブルのデータを使用したいと思います。ピボットテーブルとの関係
これらのテーブルには、商品、店舗、store_products、cart_itemsであり、そのフィールドは以下の通りです:
製品(ID、名前、価格)
ストア(ID、名前など)
store_products(STORE_ID、PRODUCT_ID、store_price、store_slug)
cart_items(ID、USER_ID、PRODUCT_ID、S私は
CartItem::with('product')->get()
を呼び出すときtore_id、量)
マイCartItemモデルは
class CartItem extends Model
{
public function product()
{
return $this->belongsTo('App\Product');
}
public function store()
{
return $this->belongsTo('App\Store');
}
}
ようなもので、私はそれがピボットテーブル"store_products"
からcart_items.store_id and cart_items.product_id
を一致する製品データ(from product table and store_price, store_slug from store_products)
を返したいです。
CartItemモデルでこの関係を作成するにはどうすればよいですか?可能であれば、クエリービルダーや生のクエリの代わりにEloquent ORM関数を使用するだけです。製品モデルで
お返事ありがとうございますが、正しい結果が返されません。これには、ピボットテーブルにすべての店舗があるCartItemへの商品データが含まれています。私がしたいのは、各CartItem行で定義されている特定のstore_idのピボット結果を取得することです。 –
これを試してみましょう。 'CartItem :: with(['store.products']) - > get();' –