哪里方法输出为空?

时间:2011-04-09 05:43:36

标签: ruby-on-rails ruby-on-rails-3

我有一个名为Article的模型,我还有一个名为“article”的db表。 文章表有一列“created_at”。

见图片

http://imgur.com/cmu00

当我在控制台中运行以下命令时......

>> Article.where("created_at < '08-04-2011'")
=> []

是不是说在日期大于08-04-2011(d,m,y)时创建的输出是什么? 这个命令不应该输出你在上面发布的图像中看到的最后一个条目(id#7)吗?

我甚至尝试更改日期格式,因为它并没有真正反映它在数据库中的输入方式,但仍未获得所需的结果。

非常感谢任何帮助。

谢谢

3 个答案:

答案 0 :(得分:3)

Article.where("created_at < ?" ,  Time.local(2011,4,8))

检查:http://railscasts.com/episodes/202-active-record-queries-in-rails-3

答案 1 :(得分:0)

我认为你提供错误的日期格式。试试这个:

>> Article.where("created_at < '2011-04-08 00:00:00'")

答案 2 :(得分:0)

我创建了一个宝石,可以帮助这种名为by_star的发现。它可能对您有所帮助,而不是自己如何构建这些类型的查询。