7

有一个对象 A 和一个对象 B。对象 B 具有一个可类型转换的属性(图像),以及一个与对象 A 的关系。对象 A可能与一个且只有一个对象 B 有关系,或者它可能不会。

当我枚举我的对象 A 数组时,我想检查每个对象 A 是否有一个对象 B。但是,我不想触发对象 B 的故障(这将调用反向 imageToData NSValueTransformer)。我只是想知道它是否存在。如果不将对象 B 带入内存,我该如何做到这一点?

4

2 回答 2

8

我想你可以测试一下

if (objectA.relationshipToB != nil) ...

这不会触发相关B对象的错误,因为您不访问它的属性

于 2013-11-16T14:13:19.227 回答
0

在斯威夫特我有一个

找不到接受提供的参数的“!=”的重载

错误。我的关系被正确标记为可选,但在生成的NSManagedObject我的@NSManaged属性?之后没有。所以这个检查nil失败了。我添加了?,然后我可以检查关系是否存在。

之前(没用)

@NSManaged var myRelationShip: MyClass

之后(工作)

@NSManaged var myRelationShip: MyClass? // <--- Added `?`
于 2015-05-20T18:38:54.887 回答