<分区>
<分区>
我是 Objective c 和核心数据的新手。我正在制作一个类似于闪存卡应用程序的 iOS 应用程序。我有一个核心数据,其中 EnglishWord 实体与foreignWord 实体(不同语言)具有多对一的关系。
对于每个 ForeignWord 实体,我想跟踪某些元数据:我查看该单词的次数、我查看它的日期、我给它的分数等。理想情况下,如果我可以有一个数组/字典作为ForeignWord 管理对象本身的一个属性。这是不可能的。
我能想到的唯一选择是创建一个名为“Score”的新实体,每个 ForeignWord 实体“拥有”许多 Score 托管对象(一对多),每次我创建一个新的“Score”托管对象查看外来词。
但是,这听起来很乱。如果我有 1000 个单词,那么我将在 sqlite 数据库中拥有 1000 个不同的表,每张卡对应一个表。这会减慢速度吗?有 1000 张不同的 table 不好吗?
真的是这样吗?有更优雅的解决方案吗?谢谢!
最佳答案
您可能会考虑添加一个名为“Viewing”的表,它与 EnglishWord 和 ForeignWord 都有关系(为 1)。然后,您可以跟踪此表中您感兴趣的元数据,并聚合此表中的数据,以确定您查看某个特定单词的次数、您是否正确识别了该单词等。
关于ios - 使用 Core Data/sqlite 正确收集元数据/对象数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18641074/