一旦发生,就通过ID识别IceCube重复发生的事件

时间:2015-08-19 20:30:23

标签: ruby-on-rails ruby-on-rails-4 ice-cube

我正在尝试使用ice_cube gem设置重复轮班的时间表。我正在努力的是重复发生的事件不是我带有ID的模型的真实实例;我需要能够引用每个事件以将其与shift_confirmation方法相关联(详细说明实际结束时间与预订结束时间,是否已支付班次等)。

我苦苦挣扎的是,如果我添加模型的实际实例,而不是重复实例,我将最终得到两者 - 我可以用ID引用的实例,以及重复实例

我已经考虑过是否可以添加一个IceCube异常,每次用户想要编辑它时都会从重复计划中移除(例如标记完成,付费等),并创建我的模型实例,但这似乎非常不洁净 - 必须有更好的方法。

有没有办法明确地参考ice_cube定期计划中的特定事件,以便我可以做一些事情,比如标记付费(这将在相关模型中)?

2 个答案:

答案 0 :(得分:0)

创建计划时,计划有一个想法,可能您可以在结构中使用它。

我看过这篇文章,因为我遇到了类似的问题。

我有一个表活动,包括开始,结束数据和持续时间以及带有参考'activity_id'的相关表计划。我不想存储ice-cube to_yaml字符串,因为我希望将来在中心位置添加“关闭日期”,而无需再次解析每条记录。

如果你展示你的结构,也许我可以提供一些帮助。

问候,砂光机

答案 1 :(得分:0)

查看schedulable gem,它可以让你在数据库中保存event_occurrences,让你的“日程安排”只编辑未来的事件。