Php 如何计算Laravel购物车中多个项目的总价?

Php 如何计算Laravel购物车中多个项目的总价?,php,mysql,laravel,eloquent,eloquent-relationship,Php,Mysql,Laravel,Eloquent,Eloquent Relationship,我有一个carts表,其中的列是-->“id”、“用户id”、“产品id”、“数量”。看到图片了吗 这是我的桌子 当用户将商品添加到购物车中时,我希望获得用户添加到购物车中的产品的总价格。怎么做 这是购物车模型 以下是产品型号一个选项: 您可以编辑现有关系或在用户模型中为购物车创建新关系,以加入products表并进行计算以获得总价 //User model public function cartsWithProductPrice(){ return $this->hasMany(Ca

我有一个carts表,其中的列是-->“id”、“用户id”、“产品id”、“数量”。看到图片了吗

这是我的桌子

当用户将商品添加到购物车中时,我希望获得用户添加到购物车中的产品的总价格。怎么做

这是购物车模型

以下是产品型号

一个选项:

您可以编辑现有关系或在用户模型中为购物车创建新关系,以加入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
的字段以及总价的关系

//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')
                     );
}

希望这将为您指明正确的方向。

您的模型中定义了关系吗?是的,我在模型中定义了关系。有几种方法可以做到这一点。我将发布一个选项作为答案。请发布您的答案。