ios - 将索引添加到 CoreData 多对多关系

标签 ios swift core-data many-to-many

我在 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/

相关文章:

ios - 如何使用更新的 UIImagePickerControllerDelegate iOS 12 API?

ios - 是否可以覆盖 NSManagedObject 子类中@dynamic 属性的 getter 和 setter?

ios - NSFetchedResultsController -sectionNameForKeypath 如何获取其数据?

ios - 列出项目的目录和子文件夹

ios - 模拟器中的 UIView 边界/绘图不正确

arrays - 搜索数组所有元素中的特定属性是否匹配条件

ios - 我似乎无法在 SWIFT 中使用 UIAlertViewController 从 UITextField 获取输入值?

ios - 核心数据谓词不匹配 bool 属性

php - iOS 应用程序接收格式正确的 JSON,但仍然返回为不以数组或对象开头

ios - 无法在 xcode 9 中为应用程序包 ID 创建 IXPlaceholder