在CloudKit中获取CKReferences的最佳实践方法是什么?

Jos*_*ane 8 objective-c ios cloudkit ckreference

在我的CloudKit设置中,我有一个Person记录类型,每个人都有一个Friend属于CKReference另一个Person对象的属性.

我拿了所有Person CKRecord的.我在桌子上列出这些人并将他们的朋友列在他们身上.目前我只是使用CKReference和单独获取每个朋友recordID.

这是我能看到的唯一方法,但最佳做法是什么?特别是因为我可能吸引了大量的朋友.单独获取所有这些对象似乎违反直觉.

我想知道是否有一个类似CoreData的方法,你可以选择在主要提取中获取相关对象?因此,例如,当我获取Person它时,它也会自动获取朋友.

Edw*_*eer 5

您可以使用"in"谓词查询来获取多个ID.您可以像这样定义谓词:

NSPredicate(format: "To_ID in %@", [recordIdMe, recordIdOther])!
Run Code Online (Sandbox Code Playgroud)

在你的情况,你看到的recordIdMerecordIdOther你应该拥有一个有效的数组CKReference对象.

在CloudKit中,没有自动获取相关记录的功能.