字段'___recordID'不标记为可查询

我尝试下载recordID与特定recordType不匹配的所有logging。

但是我得到一个错误。 任何想法? 我以为我可以标记为只能手动添加字段查询。

<CKError 0x15df2a10: "Invalid Arguments" (12/2015); server message = "Field '___recordID' is not marked queryable"; uuid = ECDD0C97-550F-4DD5-942D-AF4DF8917EEB; container ID = "iCloud.com.kukodajanos.Movie-Buffs">

let query = CKQuery(recordType: "UserSetting", predicate: NSPredicate(format: "recordID != %@", CKRecordID(recordName: loggedInUserRecordName!)))

我发现。 也可以添加metaindexes。

在这里输入图像说明

如果您select不在查询中使用谓词,则只需手动设置ID上的查询索引。 如果您在任何自定义字段名称上使用谓词,如:

在这里输入图像说明

例如

 let predicate = NSPredicate(format: "UserRecordID = %@", selectedUser!.userRecordID!.recordName) let query = CKQuery(recordType: recordType, predicate: predicate) 

你将不会遇到这个问题。