Итак, я записал hava, который содержит поле, которое является списком CKReference.CloudKit Список CKReference
Теперь я хотел бы получить все ссылочные (по этим спискам CKReferences) записи (из другого типа) в пакетном режиме.
Любые идеи?
Итак, я записал hava, который содержит поле, которое является списком CKReference.CloudKit Список CKReference
Теперь я хотел бы получить все ссылочные (по этим спискам CKReferences) записи (из другого типа) в пакетном режиме.
Любые идеи?
Предположим, у вас есть запись «Компания», и у них есть поле списка CKReference List под названием «Сотрудники».
Выполнение выборки для Компании очень просто, но как только у вас есть компанияRecord, теперь вы хотите получить своих сотрудников. Вы можете сделать это следующим образом:
//first you need to create an array of employee record IDs
var employeeRecordIds = [CKRecordID]()
for employeeReference in companyRecord["Employees"] as! [CKReference] {
employeeRecordIds.append(employeeReference.recordID)
}
//now you can fetch those employees
var fetchOperation = CKFetchRecordsOperation(recordIDs: employeeRecordIds)
fetchOperation.fetchRecordsCompletionBlock = {
records, error in
if error != nil {
print("\(error!)")
} else {
for (recordId, record) in records {
print("\(record)")
}
}
}
CKContainer.defaultContainer().publicCloudDatabase.addOperation(fetchOperation)
Почему бы не привести пример с обратными ссылками, если это то, что поощряется Apple? – jjatie
Я удалил заметку о обратном обращении, так как он не имеет никакого отношения к коду и тому, что задается (выборка). Не уверен, почему у меня было это с самого начала, это было просто смущение. –