There are 4 tables:
bundles: id, nameproducts: id, nameprices: id, namebundle_product: id, bundle_id, product_id, price_id
There are 3 models:
BundleProductPrice
A Product has a Price when in a Bundle. I want to have all bundles with their associated products and associated prices. I can get all bundles with their product and the price id:
// I created a Bundle Model with a products method
class Bundle extends Model
{
public function products()
{
return $this->belongsToMany()->withPivot('price_id');
}
}
// Then I call this in a controller
$all_bundles = Bundle::with('products')->get();
// Then I can get the price Id of the first product of the first bundle
$price_id = Bundle::with('products')->first()
->products()->first()
->pivot->price_id;
But I dont want the price id, I want the price Model. Is there any way to preload the price from the pivot (with Eager Loading)?
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire