繁体   English   中英

总结Ruby on Rails中表中的条目数量

[英]sum up amount of entries in a table in Ruby on Rails

我有一张桌子,看起来像这样

在此处输入图片说明

我想显示某个代理的条目数量。 我知道我可以使用例如

orders.sum(:demand)

总结需求。 (表称为订单)但是,必须有一种汇总条目的方法对吗? 例如,对于代理1,它将是4,对于代理2,它将是1,对于代理3,它将是4个条目(如屏幕截图所示)。

有任何想法吗?

如果我理解正确,那么您需要的是:agent_id的条目数量,这应该可以工作:

Order.group(:agent_id).count

结果是

=> {1 => 4,2 => 2,3 => 3}

编辑:

如果您需要的是current_user的数量:

Order.where(agent_id: @current_user).count

因此,如果current_user为'1',则得到:

=> 4

假设“确定”,您正在向控制器发送某种请求,并指定要查询的代理...

Order.where(agent_id: params[:agent_id]).count

通过activerecord,您可以使用count方法对结果进行计数。

Order.count # => 9

使用group方法,您可以将结果按另一列分组。

Order.group(:agent_id) # => #<ActiveRecord::Relation [ ... ] > 

您可以一起获得所需的结果:

Order.group(:agent_id).count # => {1: 4, 2: 2, 3: 3}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM