Сравнение дат CKQuery возвращает пустой массив

Я пытаюсь запросить частную базу данных CloudKit, сравнивая два поля даты.

 let predicate = NSPredicate(format: "timeStamp == %@", parcoursTimeStamp as CVarArg)
            let query = CKQuery(recordType: "ParcoursRecord", predicate: predicate)
            privateDatabase.perform(query, inZoneWith: recordZone.zoneID, completionHandler: { (result, error) in
                if let error = error {
                    print("Error querying for record: \(error.localizedDescription)")
                } else {
                    print("Query result: \(result)")
                }

        })

Я получаю только результат запроса: необязательно ([]), но никогда никаких результатов, хотя я знаю, что сравниваемые метки времени одинаковы. Что я делаю не так? Неправильно ли определен предикат (как мне кажется)?


person Pete    schedule 04.03.2017    source источник


Ответы (1)


Предположим, что ваш timestamp тип CKRecord был определен как NSDate...

let predicate = NSPredicate(format: "timeStamp ==  %@", parcoursTimeStamp  as NSDate)
person Adolfo    schedule 07.03.2017