在Rails中存储周期性

时间:2016-12-12 09:45:15

标签: ruby-on-rails ruby whenever

我正在为用户提供以他们选择的周期接收电子邮件的选项,例如:

Every Friday at 11pm

Every second Monday of the month at 12am

甚至

Whenever

存储此类数据以便将其提供给cron_parser gem的最佳选择是什么?

更新

我能够将@mudasobwa的建议与7 gem一起解决。流程如下:

  • 从前端的选择框中获取用户的输入
  • 在后端解析并解码为cron格式(例如1 1 * * 1意味着我需要每周发送电子邮件,因此代码可以是" periodicity&# 34;),将值存储为cron_parser
  • 使用next_run gem生成{{1}} dateformat,用于告诉gem什么时候需要执行哪些作业。

1 个答案:

答案 0 :(得分:2)

whenever gem accepts一个原始的cron语法。这就是为什么最简单的方法,即尽可能少的转换,将以原始cron格式存储值。

那就是说,你可能应该有一个解析器来自/允许用户输入/来自原始cron格式,就是这样。