2014-11-16 41 views
0
<% current_user.events.find(:all, conditions: ("start" > DateTime.now)).limit(5).each do |e| %> 
    <%= e.start %> 
<% end %> 

我收到此错误信息:地图时间戳的DateTime

invalid date 

这不起作用,因为格式不正确。 我可以使用e.start.to_date然后我可以将e.event与TimeDate.now比较,但我不知道如何将值映射到DateTime。

如果我不喜欢这样写道:

<% current_user.events.map! { |e| e.start.to_date }.limit(5).each do |e| %> 
<%= e.start %> 
<% end %> 

它是一个数组,因此,良好的限制,其中,选择活动记录方法就不管用了。

基本上我想将所有的起始值映射到日期,然后我想比较它们,只显示今天的事件或未来的事件,但不是过去的事件。

你会如何解决这个问题?

回答

1

你可以尝试:

current_user.events.where("start > ?", Time.now.to_date) 
+0

感谢就像一个魅力。 –