【发布时间】:2009-07-23 13:36:45
【问题描述】:
我在一个模型中有这段代码,它根据运行该方法的时间设置开始日期和结束日期。
让我们直接进入代码示例:
#MODEL
now = Time.now
if now.hour >= 17 && now.hour <= 23
#night
n = now+1.day
startd = Time.local(now.year, now.month, now.day, 17, 00, 00)
endd = Time.local(n.year, n.month, n.day, 8, 00, 00)
elsif now.hour >= 0 && now.hour <= 7
#morning
n = now-1.day
startd = Time.local(n.year, n.month, n.day, 8, 00, 00)
endd = Time.local(now.year, now.month, now.day, 17, 00, 00)
end
然后在一个模型(相同或另一个)中,我试图在一个 find 中运行这个函数。
#MODEL(SAME OR OTHER)
Model.find(:all,
:conditions => ['created_at >= ? AND created_at <= ?', startd, endd])
问题是我要使用那个函数来设置开始和结束日期很多,我不知道放在哪里不重复自己。它将用于不同的模型。
感谢您的帮助。
【问题讨论】:
标签: ruby-on-rails model