gpt4 book ai didi

ruby-on-rails - Mongoid 查询中的日期

转载 作者:IT老高 更新时间:2023-10-28 13:24:51 26 4
gpt4 key购买 nike

我有一个模型:

class SimpleAction
include Mongoid::Document
field :set_date, :type => Date

我收集了一些数据:

{ "_id" : ObjectId("4f6dd2e83a698b2518000006"), "name" : "lost", "notes" : "", "set_date(1i)" : "2012", "set_date(2i)" : "3", "set_date(3i)" : "25", "set_date(4i)" : "13", "set_date(5i)" : "57", "duration" : 15, "todo" : "4" }

您可以在五个字段中看到 mongoid 存储日期 - set_date(ni)。

我有两个问题:

  • 如何在 mongo 控制台客户端按 set_date 字段过滤数据?像这样的:

    db.simple_actions.find({ set_date : { "$lte" : new Date() } })

    我的查询没有返回任何数据。

  • 如何在 Rails Controller 中按 set_date 字段过滤数据?像这样的:

    @simple_actions = SimpleAction.where(:set_date => { '$lte' => Date.today })

最佳答案

我建议不要使用 Date,而是使用 DateTime:

field :set_date, :type => DateTime

现在它不仅会存储在 1 个字段中,如下所示:

"set_date" : ISODate("2012-03-14T17:42:27Z")

但 Mongoid 会正确处理您想要的查询的各种转换:

SimpleAction.where( :set_date => { :$lte => Date.today } )

关于ruby-on-rails - Mongoid 查询中的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9852470/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com