gpt4 book ai didi

ios - CloudKit 返回太多记录

转载 作者:行者123 更新时间:2023-11-30 13:31:23 27 4
gpt4 key购买 nike

我目前正在将数据从 Parse 移植到 CloudKit。我能够将数据导入到 CloudKit 结构中,但现在我没有收到正确数量的记录。我收到的是 289 条记录,而不是 52 个用户(显示在仪表板中)。我用简单的 CKQuery 和 CKQueryOperation 进行了尝试。

CKQuery 由于限制返回 100 个结果,当我使用 CKQueryOperation 时,我收到 289 个结果,其中有许多重复条目。

我使用以下代码(CKQuery 方式..)来获取我的所有用户:

let query = CKQuery(recordType: "User", predicate: NSPredicate(value:true))

let container = CKContainer.defaultContainer()
let publicDB = container.publicCloudDatabase

publicDB.performQuery(query, inZoneWithID: nil) { (records, error) in
print("USER public count: \(records?.count)")
}

对于 CKQueryOperation,我编写了一个辅助库,它将结果自动移植到一个 swift 类结构中。

let uw = ROCloudBaseWebservice<User>()

uw.load { (data) in
logger.debug("User count (CKQueryOperation): \(data.count)")
}

如果您想查看此负载的代码,您可以在此处查看: https://github.com/prine/ROCloudModel/blob/master/Source/ROCloudBaseWebservice.swift

我的其他 3 个表也有同样的情况,我也得到了错误的数据量。只有一张包含 4 个条目的表正在接收正确的数据量。

还有人遇到这个问题吗?我在表中使用引用文献。这会导致问题吗?

最佳答案

我刚刚发现,CloudKit 中有一个错误,已删除的记录以某种方式隐藏但仍然可用。我重置了开发环境并再次导入数据,返回了正确数量的记录。

更多信息可以在这篇 Stackoverflow 帖子中找到: Deleted CloudKit records Reappear

关于ios - CloudKit 返回太多记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36545909/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com