Rails,如何在设定的时间(早上)获得1.day.from_now?

AnA*_*ice 2 ruby ruby-on-rails delayed-job ruby-on-rails-3

我目前将我的DelayedJob排队如下:

Delayed::Job.enqueue MyJob.new, 5, 1.day.from_now
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种设置不同执行时间的方法:

Tomorrow morning at 9:30am PST
Run Code Online (Sandbox Code Playgroud)

Rails有一个可以解决这个问题的帮助吗?谢谢

doe*_*err 10

如果您的rails服务器在PST/PDT中运行:

Time.use_zone("Pacific Time (US & Canada)") { 1.day.from_now.beginning_of_day + 9.5.hours }
Run Code Online (Sandbox Code Playgroud)

如果它已在PST/PDT中运行,您可以将其缩短为:

1.day.from_now.beginning_of_day + 9.5.hours
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请查看TimeTimeZone.