如何在关系对象中修改或添加新对象后,将关系对象 [与实体有多少关系] 分配回实体?现在我正在做的是获取所有关系对象后我将它分配给 selectedQA 数组,并在修改或添加新对象后 selectedQA 我重新分配它回到了实体。我不确定这是不对的。请帮我解决一下这个。
var selectedQA = [SurveyQA]() //Temporary array
var survey:SurveyList //Main Entity Object
从关系中获取对象并分配给临时对象
if let surveyQAs = survey.surveyQARelation?.allObjects as? [SurveyQA] {
selectedQA = surveyQAs
}
用于保存回关系对象
survey.surveyQARelation = NSSet(array: selectedQA)
try! coreDataManager.managedContext.save()
答案 0 :(得分:1)
当您需要更改关系时,Core Data会为您处理对象图一致性维护,因此您只需要更改关系的一端。此功能适用于to-one,to-many和many-to-many关系。
换句话说,对于任何双向关系,仅更改关系的一侧就足够了。核心数据将负责更新另一方。