Ruby中的范围日期:即将到来的工作从现在到七天都是“到期”?

时间:2013-01-20 19:06:08

标签: ruby-on-rails ruby date time scope

如果该日期在接下来的七天内即将到来,我正试图将所有“工作”从现在开始到“到期”日期。

我知道如何根据created_at进行范围调整 - 但不知道如何查看特定日期。

这是我已经得到的。但我不知道应该在哪里坚持到期。当然,以下情况不起作用。

def self.due_soon # in next 7 days
   where(Time.now-due.7.days)
end

或者这是一种更好的方法:

def self.due_soon 
    where(':due < ?', Time.now-7.days)
end

同样地,你将如何寻找过期的“工作”?

思想?

1 个答案:

答案 0 :(得分:1)

解决方案存在here

scope :due_soon, lambda { where(:created_at => (Time.now - 7.days)..Time.now) }