首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Volt中用volt查询时间小于其他时间的对象?

如何在Volt中用volt查询时间小于其他时间的对象?
EN

Stack Overflow用户
提问于 2015-07-08 23:51:52
回答 1查看 76关注 0票数 1

我正在做一个Volt应用程序,需要比较时间。使用如下模型:

代码语言:javascript
复制
class Punchcard < Volt::Model
  field :punchtime
end

我可以使用时间对象保存模型的实例,以查看是否将它们作为ISODate()对象持久化到ISODate()对象中。目前为止一切都很好。

当我想使用小于标准的方法从数据库中查询时,我可以看到Volt和volt正在调用:

代码语言:javascript
复制
store.punchcards.where({"punchtime" => {"$lt" => punchtime}}).then...

(其中“拳打脚踢”是一个时间对象)进入这个Mongo查询:

代码语言:javascript
复制
db.punchcards.find({"punchtime": {"$lt": "2015-07-08T10:25:05-0700"}})

即使应该返回结果,也不会返回任何结果。

当我在保存朋奇卡模型的实例时跟踪insert调用时,我看到时间对象没有字符串化:

代码语言:javascript
复制
[INFO] task StoreTasks#save in 11.557ms
with args: "punchcards", ["punchcards", "[]"], {"user_id"=>"925b0eb84bc3d2185d1c693a", "punchtime"=>2015-07-08 16:38:49 -0700, "punch_status"=>"Out", "id"=>"75c1a3c35016d30895d38d28"}

因此,由于时间对象是在find调用上字符串化的,而不是在保存调用上,所以Mongo正在对find进行字符串比较。

如何使用Volt中的$lt / $gt和时间对象查询Mongo?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-09 16:27:16

这个应该固定在师父身上。试着逃避师父,让我知道它是否有效。

代码语言:javascript
复制
gem 'volt', github: 'voltrb/volt'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31305811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档