我在Rails服务器上运行了一个cron作业。当某些事件触发时,此rake任务会向订阅者发出呼叫/ SMS。现在当这个事件在晚上10点到早上8点之间触发时,我想将它存储在队列中,因为没有人喜欢在半夜受到干扰。如何检查时间是否在晚上10点到早上8点之间。
注意:每个用户都有自己的时区..我在数据库中有这个时区
由于
答案 0 :(得分:6)
# here "-07:00" is example of user's timezone offset
if Time.now.getlocal("-07:00").hour.between?(8, 22)
#then we send
else
#we don't send
end
答案 1 :(得分:3)
也许像......
def night_time?(t)
t.hour > 22 || t.hour < 8
end
可以使用:
store_in(queue) if not night_time?(@time)