ฉันมี 2 recordType: userDetails และคำขอซึ่งมีหนึ่งฟิลด์ในคำขออ้างอิงถึง userDetails ฉันสงสัยว่าถ้าฉันดึงบันทึกจากคำขอเพื่อรับฟิลด์อ้างอิงแล้วรับค่าที่เหลือจากการอ้างอิงที่มีเฉพาะใน userDetails เช่นชื่อผู้ใช้จะเป็นไปได้หรือไม่ หรือมีวิธีใดที่ฉันสามารถบรรลุสิ่งนั้นได้โดยไม่ต้องทำการดึงข้อมูลอื่น
ฉันลองสิ่งนี้:
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› valueForUndefKey:]: คลาสนี้ไม่สอดคล้องกับการเข้ารหัสค่าคีย์สำหรับชื่อผู้ใช้คีย์'
ขอบคุณสำหรับความช่วยเหลือและข้อเสนอแนะ