DataMapper DateTime条件

时间:2012-09-23 13:15:51

标签: ruby datetime sinatra datamapper

我正在使用一个带有DataMapper MySql db的简单Sinatra Web应用程序。我声明了一个带有属性

的Datamapper Post
property :created_at, DateTime

(使用Time.now初始化),现在想要获取过去7天内所有帖子的计数。我的疑问

lastweek_posts = Post.count(:created_at.gte => 1.week.ago)
lastweek_posts = Post.count(:conditions => ["created_at >= ?", Time.now.utc - 1.week])

但是所有返回的计数都为0(数据库包含几个带有今天created_at的条目)。什么是正确的查询?

非常感谢提前!

更新

Post.all(:created_at.gte => 1.week.ago).length

返回正确的值,但这是一个不好的选择,因为它会从远程sql数据库中获取所有帖子。

1 个答案:

答案 0 :(得分:0)

好的,我发现错误,我只是错过了在我的Sinatra脚本中要求dm-aggregates,如docs under 'Counting'中明确说明的那样。

我很抱歉这个!