我遇到了Rails应用程序的奇怪行为。
我从Github下载了我的repo,并启动了一个开发数据库。 现在,当我创建一个事件(这就是应用程序的目的)时,我会在按下“创建”并浏览器进入后再看一下,比如'events / 1'。
然而如果我导航到应该列出所有事件的主页面,则不会显示该事件,直到我重新保存我的控制器文件(我没有对其进行任何更改)。页面重新加载没有帮助。
我还应该提一下,在我以前的机器上一切正常。
这是我的控制器的一部分:
class EventsController < ApplicationController
def index
@events_future = Event.future_events
end
范围
scope :future_events, order('start_date ASC').where('start_date >= ?', Date.today)
再次,在我重新格式化之前在同一台Mac上,代码工作得很完美,所以我不认为这是我的编码(好吧,我希望)。这可能是什么?感谢。
答案 0 :(得分:1)
谢谢你上面的lawitschka
定义这样的范围在生产模式下不起作用,因为模型将被缓存,因此范围将在加载时评估,而Date.today也将被缓存,直到您重新启动应用程序。将订单(...)部分包裹在lambda中。我想这会导致你当前的设置出现问题。