ruby - 如何知道今天的日期是否在日期范围内?

标签 ruby date range

我有一个包含 start_timeend_time 的事件,我想检查该事件是否“正在进行”。那将是检查今天的日期是否在这两个日期之间的范围内。

您将如何在函数中执行此操作?

最佳答案

在 Ruby 1.9.2 中 === 不工作,我得到一个错误:

irb(main):019:0> (Time.now .. (Time.now+1)) === Time.now
TypeError: can't iterate from Time
    from (irb):19:in `each'
    from (irb):19:in `include?'
    from (irb):19:in `include?'
    from (irb):19:in `==='
    from (irb):19
    from /opt/ruby192/bin/irb:12:in `<main>'

改为使用 #cover? :

irb(main):002:0> (Time.now..Time.now+4).cover?(Time.now)
=> true
irb(main):003:0> (Time.now..Time.now+4).cover?(Time.now+10)
=> false

关于ruby - 如何知道今天的日期是否在日期范围内?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4521921/

相关文章:

ruby-on-rails - 在 RoR 2.x 中使用 respond_to 通过 ajax 实现优雅降级

javascript - 通过javascript将字符串转换为日期

javascript - Jquery过滤多个数字范围

Javascript 获取与父元素相比的范围

ruby-on-rails - 在 Ubuntu 14.04 上安装 ruby​​ 的正确方法是什么

Ruby 找不到 puts 和其他命令?

ruby - Ruby 的现实问题是什么?

python - 当使用列表找到某个值时,从行中提取多个值

r - 将日期时间列拆分为日期和时间变量

excel vba 选择负范围