我在 CoreData 中有 2 个实体相关。单词和翻译。 我希望翻译具有优先权,这是特定于单词的。示例:
单词:“abc”、“daf”
翻译:“x”、“y”、“z”
“x”是评级为 1 的“abc”的翻译,评级为 2 的“y”的翻译
“y”是对评分为 1 的“daf”、评分为 2 的“x”和评分为 3 的“z”的翻译
我会使用 SQL 将该评级值存储在多对多关系的支持表中。我应该将它存储在 CoreData 中的什么位置?
最佳答案
您需要使其成为一对多关系(即每个单词都有不同的翻译实体)或具有另一个中间对象(单词 <<->> possibleTranslationsWithRank <<-->> 翻译)。
第一个解决方案更简单、更简单,所以除非您在 Translation 对象中除了其名称和排名之外还有很多数据,否则我会采用它。
就像一个警告:当我遇到这样的情况(对新实体的意外需求)时,我将其视为一个警告信号,表明我可能没有以真正模拟我的方式充分考虑系统试图代表。
关于ios - 将索引添加到 CoreData 多对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47116779/