具有持续时间的重复计划的宝石

时间:2012-06-28 14:35:46

标签: ruby gem recurring recurring-events

我正致力于构建资产跟踪器。在我的申请中,我有'资产',用户可以在上午8点到周五早上8点之间退房。 现在我希望这也可以反复出现。所以每周从星期三8到星期五8进行一次定期预订应该是可行的。我稍后会查询我想要检查预订是否与另一个这样的定期预订发生冲突或非经常性预订。

我发现ice_cube对于重复发生的事件非常棒,但没有持续时间的概念。处理持续时间最简洁的方法是什么?当然,我不是说最后的结束时间,而是一个经常性的持续时间。

2 个答案:

答案 0 :(得分:0)

'ice_cube'允许您在初始化方法中指定:duration参数(以秒为单位),以使计划具有重复的持续时间。

我之前错过了。这应该可以解决问题。

答案 1 :(得分:-1)

您可以使用cron作业来处理重复性任务。查看Whenever gem。另请查看使用Whenever的此Railscast

从每当:

every 3.hours do
  runner "MyModel.some_process"
  rake "my:rake:task"
  command "/usr/bin/my_great_command"
end

every 1.day, :at => '4:30 am' do
  runner "MyModel.task_to_run_at_four_thirty_in_the_morning"
end

every :hour do # Many shortcuts available: :hour, :day, :month, :year, :reboot
  runner "SomeModel.ladeeda"
end