ruby-on-rails – ActiveRecord按天查询新用户数

我想生成一个表格,显示每天创建的用户数量.

什么是最有效或最优雅的ActiveRecord查询

我的(简化)模式如下所示:

create_table "users" do |t|
  t.datetime "created_at"
  t.string   "name"
end

我想要一个看起来像这样的表,其中整数是每天新用户数量

day              new users
2012-04-01       55
2012-04-02       63
2012-04-03       77
2012-04-04       88

我想从一个如下所示的数组生成表:

data_table.add_rows( [
  [ Date.parse("2012-04-01"),55],[ Date.parse("2012-04-02"),63],[ Date.parse("2012-04-03"),77],[ Date.parse("2012-04-04"),88]
] )

解决方法

您可以使用ActiveRecord组方法执行此操作,如下所示:

@users_created_by_day = User.group("DATE(created_at)").count

这将为您提供一个哈希,其中日期为关键,并将当天创建的用户数作为值.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...