我似乎总是难以理解这一点......
我每隔10米运行一次Heroku调度程序,寻找要运行的新预定作业,但是当我预期它没有运行时 - 差异是时区但是我不清楚我应该如何进行比较所以它按照我期望的方式工作。
在我们的rake任务中:
schedules = Schedule.where('status in (?) and next_run < ?', ['new', nil, ''], DateTime.current)
application.rb中的是
config.time_zone = 'Auckland'
config.active_record.default_timezone = :local
现在,我刚刚看到的确实例子并没有达到预期效果:
差异是新西兰时区的+13小时。
问题是,我应该如何进行这种比较,以便在我预期时制定计划?
更新1: 所以在经过一番混乱之后,一些特定的项目对我有用:
答案 0 :(得分:1)
使用heroku env变量设置默认时区:
heroku config:add TZ="America/Los_Angeles" # example for Los Angeles
我suppose,根据您的情况,它将是:
heroku config:add TZ="Pacific/Auckland"