Я создаю приложение Rails, которое будет хранить часы открытия и закрытия для бизнеса. Первоначально я думал просто использовать текстовый тип данных и позволить ему быть свободным:
"Monday to Friday 9am to 5pm
Saturday 11am to 4pm
Closed Sundays"
Но требования изменились, и мне нужно проверить часы на текущую дату и время и отобразить "Открыть" или "Закрыто" в представлении. Что-то вроде:
class Business < ActiveRecord::Base
def open?
# Something like ...
Time.now > open_time && Time.now < close_time
end
end
Итак, что было бы лучшим способом справиться с этим с точки зрения хранения часов для каждого дня недели? Должен ли бизнес просто has_many: open_blocks (или что-то еще), имеющее открытые и закрытые времена? Должен ли я просто хранить этот день в виде строки?