Rails 计算总销售额

Rails Calculate Total Sales

我正在计算销售(订单)总值的总和。基本上,将每种产品的销售价格相加。

下面的代码接近解决方案,但我的订单 table 中没有价格 (:price) 列,因为我从产品 table 中选择价格 => order.product.price

如何在 Order.rb 下面显示的语法中添加产品 :price?

order.rb 参考:

scope :total_sales, ->(date_time = Time.now) { where('created_at BETWEEN ? AND ?',date_time.beginning_of_day, date_time.end_of_day).sum(:price) }

OrdersController.rb

def sales
   @orders = Order.all.where(seller: current_user).order("created_at DESC")
 end 

sales.html.erb

Order.total_sales

一个订单只有一个产品?如果是这样的话:

joins(:product).where('orders.created_at BETWEEN ? AND ?', date_time.beginning_of_day, date_time.end_of_day).sum('products.price')