检查日期是否在过去七天内

时间:2015-09-07 11:52:44

标签: ruby date

我的日期格式如下:"%d-%m-%Y"(例如,今天的日期为07-09-2015),我想知道它是否在过去七天内。任何人都可以推荐一种方式吗?

3 个答案:

答案 0 :(得分:5)

你可以这样做:

require "date"
Date.today - 7 <= Date.parse("07-09-2015", "%d-%m-%Y")

答案 1 :(得分:2)

sawa的回答是正确的,但在 rails 中你也可以这样检查:

7.days.ago <= Date.parse("07-09-2015", "%d-%m-%Y")
#=> true 

答案 2 :(得分:0)

如果您更喜欢不使用rails的ago - 方法,则只能使用active_support:

require "active_support/all"
7.days.ago <= Date.parse("07-09-2015", "%d-%m-%Y")

或者,如果您不想使用任何宝石,那么您可以自己定义:

require 'date'
class Fixnum

  def days
    self 
  end

  def ago
    Date.today - self
  end
end

#Executed on 2015-09-07
2.days.ago <= Date.parse("04-09-2015", "%d-%m-%Y") #=> false
2.days.ago <= Date.parse("07-09-2015", "%d-%m-%Y") #=> true 
相关问题