什么是在午夜美国铁路中安排"随时"任务的最佳方法?

Deb*_*att 4 cron whenever rake-task ruby-on-rails-4

我们有一个Rails 4应用程序.whenever使用夏令时在午夜美国的轨道中安排任务的最佳方法是什么?

我们需要在一天的报告中晚上11点59分发送电子邮件.

我们正在使用 tzinfo gem

TZInfo::Timezone.get('America/Denver').local_to_utc(Time.parse('11:58pm')).strftime('%H:%M%p')
Run Code Online (Sandbox Code Playgroud)

当时没有发送电子邮件.

小智 7

这适用于时区问题,服务器是UTC,另一个时区是用户(夏令时).定义本地操作并在cronjob中使用.

schedule.rb

require "tzinfo"

def local(time)
  TZInfo::Timezone.get('America/Denver').local_to_utc(Time.parse(time))
end

every :sunday, at: local("11:58 pm") do
 #your email sending task
end
Run Code Online (Sandbox Code Playgroud)

希望它会对你有所帮助.