带有日期作为键的Ruby哈希

时间:2016-08-02 13:52:01

标签: ruby-on-rails ruby date

当我在我的数据库上执行此请求时:

users_count = User.select("date_trunc('day', created_at)").group("date_trunc('day', created_at)").count

然后我有一个以日期为键的哈希:

# => {2016-07-29 00:00:00 UTC=>1, 2016-07-06 00:00:00 UTC=>1, 2016-07-07 00:00:00 UTC=>1, 2016-07-13 00:00:00 UTC=>2, 2016-07-04 00:00:00 UTC=>421, 2016-07-09 00:00:00 UTC=>3, 2016-07-08 00:00:00 UTC=>2, 2016-07-22 00:00:00 UTC=>1, 2016-07-19 00:00:00 UTC=>1, 2016-07-21 00:00:00 UTC=>2}

但后来我无法按日期检索数据:

date = DateTime.new(2016, 7, 29)
# => Fri, 29 Jul 2016
users_count[date]
# => nil
users_count.keys.first === date
# => true
users_count[users_count.keys.first]
# => 1

如何在单个请求中检索在特定日期创建的用户数?为什么ruby给我一个哈希值中的密钥值为nil?

感谢您的帮助。

ruby​​版本2.2.4,Rails版本4.2.5.1

1 个答案:

答案 0 :(得分:0)

使用<filter> <filter-name>javamelody</filter-name> <filter-class>net.bull.javamelody.MonitoringFilter</filter-class> <init-param> <param-name>storage-directory</param-name> <param-value>/path/to/the/storage/directory</param-value> </init-param> </filter> 实例,转换为时间,因为哈希键显然是DateTime的实例:

Time