Я хочу знать, принадлежит ли время расписаниюили другому.
В моем случай для расчета, если времянаходится в ночном расписанииили нормальном расписании.
Я пришел к этому решению:
NIGHT = ["21:00", "06:00"]
def night?( date )
date_str = date.strftime( "%H:%M" )
date_str > NIGHT[0] || date_str < NIGHT[1]
end
Но я думаю, не очень элегантно, а также работает только для этого конкретного случая, а не для каждого временного диапазона .
(я нашел несколько похожих вопросов SO , но все они ссылаются на Датадиапазоны отсутствуют Времядиапазоны)
Решение должно работать для случайных диапазонов времени не только для этого конкретного, скажем:
"05:00"-"10:00"
"23:00"-"01:00"
"01:00"-"01:10"