Rails Date.today反映了服务器的部署日期

时间:2014-09-19 06:52:35

标签: ruby-on-rails ruby date amazon-ec2

我有一个rails应用程序,它显示活动事件(今天或之后的事件)。

scope :active, where("event_date >= ?", Date.today).order("event_date ASC")

当地情况好转。但是在生产服务器上,查询将采用部署日期进行比较。

这是日志

SELECT "events".* FROM "events" WHERE "events"."school_id" = 32 AND (roster_id in (45) or roster_id IS NULL) AND (event_date >= '2014-09-18') ORDER BY event_date ASC

但如果在生产时从控制台检查,它显示正确

 1.9.3-p448 :001 > Date.today
     => Fri, 19 Sep 2014

服务器位于AWS EC2上

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:6)

尝试将其放入lambda:

scope :active, -> { where("event_date >= ?", Date.today).order("event_date ASC") }

在加载代码(即部署)时,可能正在评估Date.today