gpt4 book ai didi

ios - 保存/编辑重复日历事件的最佳方法

转载 作者:行者123 更新时间:2023-11-29 04:28:57 31 4
gpt4 key购买 nike

我有一个 SQLite 数据库存储我的所有日​​历事件,建模如下:

TimerEvent
*Attributes
-date
-dateForMark
-reminder
*Relationships
-eventInfo (<->)

EventInfo
*Attributes
-location
-notes
-recurringKey
-reminderKey
-title
*Relationships
-timerEvent (<->)
-repeat (<->>)

Repeat
*Attributes
-repeatDate
*Relationships
-eventInfo(<->>)

当您创建事件时,会创建一个 TimerEvent,并插入三个日期值。然后,创建与 EventInfo 实体的关系,并插入事件的位置、标题、注释和提醒/重复键。如果重复键不是 -1,则根据 TimerEvent 日期和用户输入确定的日期之间的重复日期数创建 Repeat 实体。

我的日历读取所有日期,显示它们,然后在我的 AgendaView 中可以显示来自“父”实体的所有信息(EventInfo 不是 Repeat 的父实体。它只有一个一对一的实体)许多关系与可以创建的许多重复)。编辑时出现问题...如果我想编辑其中一个重复事件,只编辑该事件(不是后续事件或之前事件),并且我将 Repeat 对象追溯到 EventInfo 对象,更改该信息会更改每个事件的信息。我只能想象两种解决方案:

1. Add extra NSString attributes to repeat events for when events are edited
2. Create a new event JUST for that object, nullify the existing relationship,
and use the repeatDate as the main date.

最佳答案

我会将重复事件拉出到 EventInfo 表中的单个事件,同时使用重复表来跟踪所有事件。因此,重复表处理有关所有重复事件的公共(public)信息,同时为重复事件的每个实例创建单独的 EventInfo 记录。比如下面这样

事件信息

  • 第 1 项 - 不重复
  • 第 2 项 - 重复(重复 ID 1)
  • 第 3 项 - 重复(重复 ID 1)
  • 第 4 项 - 重复(重复 ID 2)
  • 第 5 项 - 重复(重复 ID 2)
  • 第 6 项 - 不重复

重复

  • 重复 1 - 重复常见信息
  • 重复 2 - 重复常见信息

关于ios - 保存/编辑重复日历事件的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11972480/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com