我在CoreData中有2个实体,涉及多个到多个实体。词和翻译。 我希望翻译具有优先权,这是特定于单词的。例如:
单词:“abc”,“daf”
翻译:“x”,“y”,“z”
“x”是“abc”的翻译,评级为1,“y”,评级为2
“y”的翻译为“daf”,评分为1,“x”的评级为2,“z”的评级为3
使用SQL我会将该评级值存储在支持表中,以实现多对多关系。我在哪里将它存储在CoreData中?
答案 0 :(得分:0)
您需要使其成为一对多关系(即为每个Word设置不同的翻译实体)或拥有另一个中间对象(Word<< - >> possibleTranslationsWithRank<< - >>翻译)。
第一个解决方案更简单,更简单,所以除非你的名称和等级除了翻译对象中有很多数据,否则我会继续使用它。
正如警告:当我遇到这样的情况时(意外需要一个新的实体),我把它作为一个警示标志,我可能没有充分考虑系统,以一种真正模拟我的方式试图代表。