在iOS 6.0.1上将Core Data托管对象上下文保存到SQLite存储时,我遇到了一个奇怪的“CoreData不支持持久的跨店关系”异常。它涉及模型中Quotes和AbstractSources之间的一对一关系。在运行时它涉及一个Quote和一本书(其中Book继承自AbstractSource。一切都在模型编辑器中运行良好。)
我研究了类似的报道,并报道了报道的原因:
- 我将Quote和Book分配给同一个持久性
使用assignObject:toPersistentStore:存储,所以两者都不存在
未分配的。
- 错误描述显示所有“绝对”x-coredata id开始
使用相同的前缀(例如
“x-coredata:// 82B3BEB3-60F2-4912-AC80-11AAD29CFF99 /”,所以有
实际上似乎只是一个商店才使用。
醇>
我的问题是这些:
- 还有什么我需要检查的(也许sg。与...有关
AbstractSource,我在源代码中没有触摸/控制?我是
通过调用来创建Quote和Book
initWithEntity:insertIntoManagedObjectContext each。)
- 我注意到错误描述还包括几个
“相对的”x-coredata id(形式为“x-coredata:/// ......”)。可以
绝对形式总是被认为是
“跨数据库”,即使“绝对”前缀(见上面的例子)是相同的?
如果是这样,我怎么能影响“绝对”和“绝对”之间的任何选择
“亲戚”x-coredata ids?
醇>
Thx(很多)引起你的注意!