Я делаю приложение, которое имеет задачи для определенных команд, используя CloudKit в качестве моего бэкэнда. Я настроил его так, чтобы первый экран, который вы видите, это список команд. Когда вы выбираете команду, я хочу просто увидеть все задачи, связанные с этой конкретной командой. У меня есть приложение для сохранения и выбора задач, но все задачи отображаются в каждой команде.Извлечь только задачи с определенным значением
Я очень новичок в CloudKit (раньше я использовал Parse), а также новый для предикатов. В настоящее время я передаю команду recordID в виде строки, используя функцию prepareForSegue
, в мой диспетчер представлений задач. В Parse это все, что мне нужно, чтобы получить только задачи для этой команды. Я вижу, что экономия работает правильно, когда я смотрю на CloudKit Dashboard (каждая задача имеет правильный идентификатор команды в своей записи).
Я знаю, что проблема находится где-то в следующем фрагменте кода, но я не уверен, как это сделать.
func loadTasks() {
tasks = [CKRecord]()
let query = CKQuery(recordType: "Tasks", predicate: NSPredicate(format: "TRUEPREDICATE", argumentArray: nil))
publicData.performQuery(query, inZoneWithID: nil) { (results:[CKRecord]?, error:NSError?) -> Void in
if let tasks = results {
self.tasks = tasks
dispatch_async(dispatch_get_main_queue(), {() -> Void in
self.tableView.reloadData()
})
}
}
self.refreshControl?.endRefreshing()
}
Поэтому я думаю, что я спрашиваю, как использовать предикаты для фильтрации данных, чтобы показывать задачи только для выбранной команды. У меня есть только то, что у меня есть, потому что я следил за учебником.
спасибо за объяснение! –