我有一个start_time和end_time的事件,想要检查事件是否“正在进行中”.那将是检查今天的日期是否在两个日期之间的范围内.
你会如何在一个函数中做到这一点?
解决方法
使用===
实际上,有一个操作符会这样做.使用===运算符创建一个范围并将Time对象与它进行比较.
start = Time.now.to_i range = start..(start + 2) inside = start + 1 outside = start + 3 # ok,now... range === inside # true range === outside # false
更新post-comment-flood:此版本适用于所有地方. (在Rails中,在Ruby 1中,在Ruby 2中.)早期的irb示例也运行良好,但在某些实验中并不总是正确地再现交互式示例.这个更容易切割和粘贴.
现在全都理顺了.