如何验证日期是否已过期/通过?

时间:2016-06-28 14:16:35

标签: ruby

我有dd mmm'yy格式的日期列(例如:17年6月26日)。如果使用Ruby过期,则必须检查这些日期。我可以这样做吗?

谢谢!

3 个答案:

答案 0 :(得分:1)

d = "26 Jun'17"
#⇒ "26 Jun'17"
▶ Date.today >= Date.parse(d.tr("'", ' '))
#⇒ false

Date#parse了解“6月26日”:

▶ Date.parse d.tr("'", ' ')
#⇒ #<Date: 2017-06-26 ((2457931j,0s,0n),+0s,2299161j)>

答案 1 :(得分:1)

您可以使用Ruby标准库中的Date模块来解析日期字符串,然后使用<=>进行比较。

顺便说一句,如果你在一个“纯粹的”ruby环境(不是Rails控制台)中工作,你必须将它包含在你的代码中:

require 'date'

Date.parse("26 Jun'17") > Date.today               # => true

答案 2 :(得分:0)

将其转换为datetime对象,然后与其他日期时间对象进行比较?

time_one = DateTime.new(2001,2,3)
time_two = DateTime.new(2001,1,3)

time_one > time_two