0

我有一个事件列表站点,我目前正在today通过执行以下操作列出发生的事件:

def load_today_events
 @today_events = Event.find(:all, :conditions => ['start_date =?', Date.today])
end

这工作得很好。

我最近介绍了一个end_date跨越一天以上的事件。

显然,一旦start_date通过上面的代码,事件就会从我的列表中消失。

我可能在这里遇到了精神障碍,但我一生都无法弄清楚如何显示开始日期已过但结束日期尚未结束的事件。

我想我想要一些类似的东西:

查找date.today等于或介于start_date或之间的事件end_date

任何想法如何最好地解决这个问题?

4

1 回答 1

1

不确定我是否理解正确,但这里有一些关于日期可以做什么的例子。
在下面的示例中,current_datepostgresql今天日期的函数。这将匹配 current_date 大于或等于 start_date 且小于 end_date 的事件。

@today_events = Event.where("current_date >=  ? and current_date <= ?", start_date, end_date)

另一种方法可能是这样的:

@today_events = Event.where("start_date >=  ? and end_date <= ?", start_date, end_date)

此示例显示来自当前日期间隔的事件。
这是基础知识,所以我希望你能适用于你自己的问题。

于 2012-09-02T15:33:06.210 回答