我收到了错误......
Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: 'Illegal attempt to establish a relationship 'part' between objects in different contexts
我已经跟踪了获取Part
对象和Selection
对象的上下文,它们100%来自相同的上下文。
然后我使用字典......
@{
@"part" : thePart,
@"name" : @"Some name",
@"value" : @"Some value"
}
功能......
Selection *selection = [Selection insertInManagedObjectContext:self.innerContext];
[selection setValuesForKeysWithDictionary:dictionary];
self.innerContext
与我用来获取Part对象的上下文相同。它甚至归同一个对象所有。
我不确定我能做些什么来检查这一切,因为一切都应该有效?
修改
好的,不确定这里发生了什么。
当我保存选择时,part.managedObjectContext
为nil
...
???
答案 0 :(得分:1)
我假设Selection
和Part
是NSManagedObject
s。
如果是这样,我首先会检查managedObjectContext
和thePart
上的selection
属性,只是作为一个完整性检查。如果他们是平等的,那我就有点困惑了。如果它们不同,那么我将重新检查获取/创建这些对象的方式。
如果managedObjectContext
为{0},则表示其中一个对象已从其托管对象上下文中删除。