Запрос CloudKit по самой старой измененной записи
Я работаю с CloudKit и пытаюсь разделить записи по "modifyDate", но заполню лимит моих результатов, начиная с самого старого. Например, если у меня есть 4 записи, созданные mon, tues, wed, thurs, и я выбираю только две из них, я получу запись mon, tues, а не wed thurs. Ниже приведен код, который я пытаюсь исправить.
func fetchRecentModified() {
let predicate = NSPredicate(value: true)
let sort = NSSortDescriptor(key: "votes", ascending: true)
let query = CKQuery(recordType: "Dog", predicate: predicate)
query.sortDescriptors = [sort]
let operation = CKQueryOperation(query: query)
operation.resultsLimit = recordFetchMax
operation.recordFetchedBlock = { (record) in
VoteQueue.sharedInstance.append(record)
}
operation.queryCompletionBlock = { (cursor, error) in
dispatch_async(dispatch_get_main_queue()) {
if error == nil {
print("There is no error fetching records \(recordFetchMax)")
print(VoteQueue.sharedInstance)
API.shared.flagRecords(VoteQueue.sharedInstance)
} else {
print("There was a problem fetching the list of dogs please try again")
print(error)
}
}
}
self.database.addOperation(operation)
}
Я подумал, что это будет так же просто, как пометка NSSortDescriptor
восходящий к ложному. Но это не сработало (после дополнительного тестирования я обнаружил, что он будет возвращать только записи, которые имеют значение 0 для выбранного поля).
Кроме того, я попробовал несколько различных сравнений предикатов безрезультатно Какие-нибудь мысли? Я готов навсегда отказаться от CloudKit.