我想在这里构建一个循环,这将允许我在Cloudkit仪表板上自由添加新桶,而无需更新该应用程序。我的recordType的一个属性是Bucket,它是Int(64)类型。我有我的项目按桶分类,从1开始增加1.循环的目标是找到哪个桶没有关联的CKRecord,并返回最后一个有CKRecord的桶的编号,供稍后使用应用程序。iOS Swift Cloudkit performQuery函数
我的问题是,正如你所看到的,我包含了println()语句来检查什么是正在处理和什么不是,当它打印“第一个”时,它从不打印“here”或“there”它从不运行performQuery函数。
在此先感谢您的帮助!
for bucket in 1...1000 {
let bucketPredicate = NSPredicate(format: "Bucket = \(bucket)")
let bucketQuery = CKQuery(recordType: "CardRecordType", predicate: bucketPredicate)
// Make this error handling perfect
println("first")
publicDatabase.performQuery(bucketQuery, inZoneWithID: nil) {
results, error in
if error != nil {
println("here")
if error.code == 11 {
println(error.localizedDescription)
var bucketNumber = (bucket - 1)
}
else {
println(error.localizedDescription)
}
}
else {
println("there")
println(results)
}
}
}