MongoDB中的日历事件调度&节点

时间:2016-09-14 08:24:52

标签: javascript mongodb events scheduling recurrence

早上好,

我认为这已被问过几次,但我找不到任何令我满意的答案。 因此,我想描述我的想法并寻求反馈或更好的解决方案。

问题: 我正在建立一个平台,人们可以在其中添加他们的活动(例如开放麦克风之夜)。现在,他们中的大多数都是经常性的(每周,每个月的最后一个星期五,每两周等),每次都有不同的与会者等。

对于第一个原型,我们采用了简单的方法,只是复制了事件本身,但显而易见的原因并不是一个很好的解决方案。

我正在考虑以下内容以使这更容易: 我将其分为两部分,而不是一个集合: 一个处理主要事件详细信息的集合和一个处理事件的集合:

收藏:活动

  • ID
  • 标题
  • 描述
  • 共享的更多字段

收集:事件发生

  • 事件:{参考活动}
  • 取消
  • 开始日期
  • 与会者:[]
  • 覆盖:{覆盖某些字段,即标题}

因此,如果您要列出数据库中的所有事件,您将从事件事件中获取所有事件并填充事件字段以获取详细信息。 通过这种方式,您可以轻松生成所有事件的列表。

现在,这似乎是一个可行的解决方案,但我认为这不是正确的安排。 例如:如果用户创建每周重复的事件,该怎么办?我会生成让我们说10个活动日期。 现在,用户说'该死的,实际上我每2个星期就想要它" - 我需要移动所有存在的日期或清除日期并再次添加(如果有意义的话)。

我想知道是否有更好的方法来做到这一点。 我认为困难在于我需要每次出现不同的字段(即与会者),并且可能能够覆盖主要事件中的字段(如标题或描述)。

我已经阅读了有关RRule但我不确定的事情"什么事件发生在2016年9月17日"如果只存储事件的第一个日期和间隔,则会完成。

任何输入都会非常感激:)

干杯

大卫

0 个答案:

没有答案