【问题标题】:Save changed NSManagmentObject to core data Fails将更改 NSManagedObject 保存到核心数据失败
【发布时间】:2012-03-21 09:50:52
【问题描述】:

你能帮我解决我的问题吗?我有服务将所有请求结果缓存到核心数据。我使用 RestKit 来做到这一点。除保存外,一切正常。然后我尝试更改对象中的某些属性,然后将其保存为 NSManagedObjectContext 保存方法,但如果我在保存更改后查看此对象,我会看到:

<User: 0xcedf910> (entity: User; id: 0xcede9f0 <x-coredata://904DBCDF-F1CF-4F2B-B173-2994FE47DEC8/User/p1800> ; data: <fault>)

然后尝试从上面的对象获取数据我出错了:

*** Terminating app due to uncaught exception 'NSObjectInaccessibleException', reason: 'CoreData could not fulfill a fault for '0xcedbce0 <x-coredata://904DBCDF-F1CF-4F2B-B173-2994FE47DEC8/User/p1722>

获取对象的代码:

[objectManager.objectStore objectsForResourcePath:path]

有什么帮助吗?谢谢你。

【问题讨论】:

  • 这似乎是 NSManagedObjectContext 保存在 RestKit 中的错误

标签: core-data restkit


【解决方案1】:

NSObjectInaccessibleException,就是这个意思。

您可能创建了一个 NSManagedObject 并将其放在上下文中,可能在某处保存了对它的引用。然后它从上下文中删除并且没有保存,您尝试再次访问它。

【讨论】:

  • 我做了一个 fetch requet [objectManager.objectStore objectsForResourcePath:path] 然后更改从请求返回的某个对象中的一个属性。然后保存[[RKObjectManager sharedManager].objectStore save];。之后 (entity: User; id: 0xcede9f0 ; data: ) 如果我尝试从从这个 fetch 请求返回的任何对象都会被它崩溃(
猜你喜欢
  • 1970-01-01
  • 2011-10-11
  • 2019-10-10
  • 1970-01-01
  • 1970-01-01
  • 2020-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多