У меня есть 2 типа записи: userDetails и запрос, в котором одно поле в запросе ссылается на userDetails. Мне интересно, если я получу запись из запроса, чтобы получить поле ссылки, а затем получу остальную часть значения из ссылки, которая доступна только в userDetails, таких как userName, будет ли это возможно? Или есть ли способ добиться этого, не выполняя другую выборку данных?
Я пробовал это:
CKContainer.default().publicCloudDatabase.fetch(withRecordID: CKRecord.ID(recordName: "0A38D024-C191-436E-8622-AE7527805CE8")) { (fetched, error) in
if fetched != nil {
let a = fetched?.value(forKey: "requesterReferenceId") as? CKRecord.Reference
let b = a?.recordID.value(forKey: "userName") as? String
print(b!)
}
}
Но получил ошибку:
Завершение работы приложения из-за необработанного исключения «NSUnknownKeyException», причина: «[‹CKReference 0x600002034280› valueForUndefinedKey:]: этот класс не соответствует кодированию значения ключа для ключа userName».
Благодарим за любую помощь и предложения.