将来安排时间

时间:2019-07-29 15:47:15

标签: ruby-on-rails ruby

我一直在做一些研究,但无法在Rails中弄清楚该如何做。 一定时间后,我需要执行一些代码。我发现有些gems可以解决这个问题,但我不想使用任何东西。

我基本上在create中有一个Rails controller函数,并且24小时后需要在其中发生一些事情。

编辑:我尝试使用sleep,但是它必须为async,即使它在if语句中,睡眠也将阻止一切运行直至完成。

1 个答案:

答案 0 :(得分:5)

您需要使用ActionJob创建一个rails generate job your_job_name。 然后您可以延迟执行

YourJob.set(wait_until: 1.day.from_now)

为此,您确实需要为您的项目配置一个Job队列。我个人推荐Sidekiq

遗憾的是,您很难避免为此设置宝石。