当使用字符串范围 ("2025-09-17".."2025-10-10") 检查时间字符串时,所有时间点都返回 true
("2025-09-17".."2025-10-10").cover?("2025-09-17 07:24:22 +0800") # => true
("2025-09-17".."2025-10-10").cover?("2025-09-17 08:24:22 +0800") # => true
但当检查时间对象时,结果出现矛盾
("2025-09-17".."2025-10-10").cover?(Time.current - 4.hours) # => false
("2025-09-17".."2025-10-10").cover?(Time.current - 3.hours) # => true
数据验证
(Time.current - 4.hours).to_s # => "2025-09-17 07:29:45 +0800"
(Time.current - 3.hours).to_s # => "2025-09-17 08:29:45 +0800"
相同时间值(如 07:29:45 +0800):
作为字符串时能匹配范围
作为时间对象时不能匹配范围
更奇怪的是,时间对象在 08:00 前返回 false,08:00 后返回 true