我只想在CloudKit中的音樂記錄中僅提取Song_Name字段。我試着在代碼下面,但它仍然提取音樂記錄中的所有字段。我想我需要編譯publicDB.add(操作)方法操作,但它不允許我宣佈結果我現在publicDB.perform做(查詢中,....)只抓取cloudkit中的特定字段?
let predicate = NSPredicate(value: true)
let query = CKQuery(recordType: "Musics", predicate: predicate)
let operation = CKQueryOperation(query: query)
operation.desiredKeys = ["Song_Name"]
publicDB.perform(query, inZoneWith: nil) { [unowned self] results, error in
guard error == nil else {
DispatchQueue.main.async {
self.delegate?.errorUpdating(error! as NSError)
print("Cloud Query Error - Refresh: \(error)")
}
return
}
self.items_music.removeAll(keepingCapacity: true)
for record in results! {
let music = Musics(record: record, database: self.publicDB)
self.items_music.append(music)
}
DispatchQueue.main.async {
self.delegate?.modelUpdated()
}
}
}
請定義「不工作」。這是程序員可以使用的最無用的短語。請明確點。編譯時是否有錯誤?它會崩潰嗎?它是否不符合你的期望?用錯誤信息或調試信息[編輯]你的問題。清楚地解釋你的代碼實際上做了什麼,並清楚地解釋你期望它做什麼。讓人們很容易幫助你。不要在評論中發佈此信息。請編輯您的問題並提供相關詳細信息。 – rmaddy
@rmaddy我編輯了描述,是的,現在我注意到了。對不起。 –