如何使用获取结果控制器获取的对象列表添加其他对象?

问题描述 投票:-1回答:1

我有一个名为“Event”的实体,它有s开始和结束日期属性。我必须通过在UI中按日期对事件进行分组来显示事件列表。我正在使用NSFetchedResultsController来获取和列出事件。

让我们假设一个事件有今天的开始日期和明天的结束日期,这里我需要在UI的两个不同日期显示这个事件,但我在数据库中只有一个条目。

我真的不想为事件创建多个条目,我也希望使用获取结果控制器,因为它减少了批量手动计算。有什么方法可以解决这个问题吗?

ios swift core-data nsfetchedresultscontroller nsmanagedobject
1个回答
0
投票

NSFetchedResultsController很好地将NSManagedObjects与indexViews匹配为tableView。但是,映射是一对一的,因此任何给定的事件只能在indexPaths中出现一次。为了达到你想要的效果,你需要创建一个新的实体,比如EventDate,它具有从EventEventDate的多对多关系。定义一个字符串属性,该属性反映日期是在事件的开始还是结束。然后将您的FRC建立在EventDate实体上。虽然每个EventDate只出现一次,但多个EventDate可能与单个事件有关。从EventDate到Event的反向关系将使您能够从多个EventDates访问单个事件的详细信息。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.