我有一个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上
非常感谢任何帮助。
答案 0 :(得分:6)
尝试将其放入lambda:
scope :active, -> { where("event_date >= ?", Date.today).order("event_date ASC") }
在加载代码(即部署)时,可能正在评估Date.today
。