【问题标题】:rails mongo query to get previous day's resultsrails mongo 查询以获取前一天的结果
【发布时间】:2016-03-31 18:57:54
【问题描述】:

我正在从我的 ruby​​ on rails 应用程序生成一份报告,该报告将在每天早上 7 点运行。 该报告将收集前一天的结果。

所以基本上我想将前一天的结果查询到我的 Mongo 集合中。这是我尝试过的:

logs = Log.where(:comp => comp, :created_at => (Date.today -1)) 

我收到以下错误:

BSON::InvalidDocument: Date is not currently supported; use a UTC Time instance instead.

获得 aboce 结果的最佳方法是什么:

这是我的数据库中日期的格式:

 "created_at" : ISODate("2015-12-02T23:12:38.076Z")

【问题讨论】:

  • 实际上,我无法重现 - 什么版本的 mongoid/rails/etc?

标签: ruby-on-rails ruby mongodb mongoid


【解决方案1】:

你可以在 mongoid 中做这样的事情:

logs = Log.where(:comp => comp, :created_at.gte => (Date.today -1 ).to_datetime) 

Date.to_datetime 将默认为午夜,如下所示:

(Date.today - 1).to_datetime
=> Wed, 30 Mar 2016 00:00:00 +0000

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-10
    • 2021-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多