我有一个核心数据实体,需要保留其他实体的NSManagedObjectID
。为此,我正在考虑将ObjectID转换为一个被批准的NSManagedObject
属性类型的字符串。
我可以从文档中读到我可以通过以下方式获取ID的URI表示:
NSURL *uriID = [[myEntity objectID] URIRepresentation];
然后我可以通过以下方式将此URL转换为NSString:
NSString *stringID = [uriID absoluteString];
我可以坚持我的NSManagedObject
的NSString属性。
现在当我需要走另一条路时会发生什么?
我希望能够做到这样的事情:
if([myManagedObject objectID] == value)
其中 值 是我之前转换为NSString的NSManagedObjectID
。
更多地了解原因:我需要能够拥有一个Entity对象并保留另一个Entity对象的ObjectID,以便我以后可以继续:这个对象最后一次“交互”就是这个实体。
希望有人可以帮助我实现这项工作:) 谢谢
答案 0 :(得分:7)
为什么不在名为Object
的{{1}}中建立一对一关系属性,该属性指向interaction
的实例 - 反之亦然,来自{{}}的多对多关系{1}} Entity
调用了Entity
?如果没有所有转换方法,这可以非常巧妙地解决问题。
但您也可以查看-managedObjectIDForURIRepresentation:
和+URLWithString:
方法,转向另一个方向。