Rails计算总销售额

时间:2019-03-31 19:58:05

标签: sql ruby-on-rails ruby postgresql ruby-on-rails-4

我正在寻找销售(订单)总价值的总和。基本上,将每种出售产品的价格加在一起。

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

中选择价格

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

order.rb参考:Rails: How to sum total price per day

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

1 个答案:

答案 0 :(得分:1)

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

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