【问题标题】:Rails Date.today is reflecting Date of Deployment of ServerRails Date.today 反映了服务器部署的日期
【发布时间】:2014-11-13 16:47:54
【问题描述】:

我有一个 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 上

非常感谢任何帮助。

【问题讨论】:

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


【解决方案1】:

尝试将其放入 lambda:

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

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

【讨论】:

  • 是的,这就是必须使用 lambda 的原因。好答案+1
猜你喜欢
  • 2011-01-04
  • 2013-10-26
  • 1970-01-01
  • 1970-01-01
  • 2012-07-09
  • 2014-05-26
  • 2016-08-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多