此问题从previous question开始。
当我运行以下代码行时:
NSEntityDescription *outputCellEntityDescription = [NSEntityDescription entityForName:@"OutputCell"
inManagedObjectContext:[[self document] managedObjectContext]];
我收到以下错误:
HIToolbox: ignoring exception '+entityForName: could not locate an NSManagedObjectModel for entity name 'OutputCell'' that raised inside Carbon event dispatch
我担心的是,错误中实体名称末尾似乎出现了额外的上升。任何人都可以解释为什么会发生这种情况或我如何调试它。代码在首次运行时正常运行,但在几次Core Data提取后,它似乎会中断。这可能是与内存泄漏或类似问题有关的问题吗?
感谢您的帮助。
答案 0 :(得分:1)
没有额外的增加。你只有嵌套的引用:
['] + entityForName:无法找到 实体名称的NSManagedObjectModel 'OutputCell'[']
该位是异常返回的字符串。它反过来有OutputCell
单引号。但它看起来确实令人困惑。如果你之前没有见过它很容易错过。
不确定导致错误的原因。
作为调试步骤,我建议在模型上记录对-[NSManagedObjectModel entities]
的调用结果,以确定它是否确实包含OutputCell
实体。
您的问题的一个简单解释是,您保存后以某种方式切换模型。你不小心分配了一个不同的模型,或者你没有你的模型。要测试它,您应该记录NSManagedObjectModel实例的地址,看它是否发生变化。