>我有 5 个对象的活动记录如下
@top_sold = Photo.where(photographer_id: @photog).order('qty_sold DESC').first(5)
我想知道所有 5 张照片的qty_sold总和
这不起作用
@top_sold.sum(:qty_sold(
非常感谢
.first
返回 Array
,改用 limit
(返回 ActiveRecord::Relation
(。
@top_sold = Photo.where(photographer_id: @photog).order('qty_sold DESC').limit(5)
你可以做的Array
@top_sold.map(:qty_sold).inject(:+)
您是否
尝试过将sum
附加到查询中?
@top_sold = Photo.where(photographer_id: @photog)
.order('qty_sold DESC').first(5).sum('qty_old')
如果您需要原始结果集,那么@Nithin答案就是您想要做的。