热门标签 | HotTags
当前位置:  开发笔记 > IOS > 正文

如何通过lastModifiedUserRecordID查询CloudKit?

如何解决《如何通过lastModifiedUserRecordID查询CloudKit?》经验,请帮忙看看怎么搞?

根据Apple文档,lastModifiedUserRecordID是在iCloud上自动生成的系统字段。

我想从我最近修改的公共iCloud数据库中获取记录。

我在CloudKit仪表板上将“ modifiedBy”设置为Queryable并添加了以下谓词:

let userId = CKRecord.Reference(recordID: userCKRecordID, action: .none)
lastModifiedPred = NSPredicate(format: "lastModifiedUserRecordID = %@", userId)

它不返回任何结果。如果删除此谓词,它将返回1个结果,并且我可以在仪表板上看到由记录ID(recordName)修改的最后一个与我发送它的用户recordName匹配。

奇怪的是,使用“ creatorUserRecordID”并传递与上述相同的值确实会返回正确的结果,但是我需要lastModifiedBy。

编辑:根据建议,我尝试使用实际的userCKRecord.recordName作为字符串并将此谓词发送到CloudKit。

lastModifiedPred = NSPredicate(format: "lastModifiedUserRecordID = %@", userCKRecord.recordName)

并收到此错误:

“字段\'___ modifiedBy \'的值类型为REFERENCE,无法使用过滤器值类型STRING进行查询”

如上所述,我可以使用顶部的原始谓词(使用CKRecord.ID)来查询creatorUserRecordID,但对于lastModifiedUserRecordID则无效。


推荐阅读
author-avatar
众神痴梦_325
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有