我有一个购物车表,其中列是---->“id”、“user_id”、“product_id”、“数量”。查看图片
这里是产品表
当用户将商品添加到购物车时,我想获取用户添加到购物车中的产品的总价。如何做到这一点?
这是购物车模型
这是产品型号
答案 0 :(得分:0)
一种选择:
您可以在 User 模型中为 Cart 编辑现有关系或创建新关系以加入 products 表并进行计算以获得总价。
//User model
public function cartsWithProductPrice(){
return $this->hasMany(Cart::class)
->join('products', 'carts.product_id', 'products.id')
->select('carts.*',
\DB::raw('carts.quantity * products.price as price')
);
}
例如,当您调用 User::with('cartsWithProductPrice')->find(1);
时,它应该为您提供与名为 price
的字段以及总价的购物车关系。
希望这会为您指明正确的方向。