我有一个在静态库中内置了一组实体的xcdatamodel。
我在一个项目中包含了这个静态库。我想在主项目中创建另一个模型,实体名为Task。我希望在实体中有一个属性,我可以在其中存储在静态库中创建的实体的NSManagedObjectID。使用NSManagedObjectID,我可以轻松地获取主存储并获取实体。最后,可能会有许多任务实体引用一个objectID。
有可能吗?我也理解这听起来像是一个关系模型,而核心数据不是,那么有没有更好的解决方案来处理这个主题呢?
谢谢
发布于 2011-07-30 18:24:36
NSManagedObjectID本身并不兼容编码。但是您可以获取对象ID的URL表示并将其存储。如下所示:
myObject.externalTaskURL = [[task objectID] URIRepresentation];然后,为了获取对象ID,以便稍后检索它引用的任务对象(__psc是Task实体所在的NSPersistentStoreCoordinator )
NSManagedObjectID* taskID =
[psc managedObjectIDForURIRepresentation:myObject.externalTaskURL];确保从不对临时管理对象ID执行此操作( do a temporary managed object ID)。
发布于 2011-07-30 21:25:35
您可以将托管对象ID作为NSURL存储在可转换属性中。
https://stackoverflow.com/questions/6881677
复制相似问题