我有一个名为Game
的CoreData对象,它有一个名为playedList
的关系。我想要它拿着一本数据字典。我不确定的事情。
1)关系必须是NSSet
吗?
2)如何将Dictionary [String:Int]或[Player:Int]保存到该关系中?
我曾尝试将关系更改为NSData
并使用
game.playedList = try NSJSONSerialization.dataWithJSONObject(myDictionary, options: [])
} catch {
print("JSON serialization failed: \(error)")
}
多对多关系的不可接受的价值类型:
我对此感到有点不确定,因为这是我第一次使用CoreData
答案 0 :(得分:1)
CoreData实体的关系必须是一个或多个其他CoreData实体。您无法定义实体与非CoreData对象(如Dictionary)之间的关系。
您可以使用属性定义一个新实体,以便将每个键存储在此字典中(如果它们是可预测的)。
或者,您可以使用ValueTransformer将Dictionary作为Data属性存储(请参阅Storing UIColor object in Core Data等)