问题是在获取 UserRecordID 时从 User Records 中获取数据。
获取用户ID的方法: post.creatorUserRecordID?.recordName
我的用户记录类型包含用户名等列,因此,我需要为具体用户解析它们。有可能吗?
最佳答案
如果我理解你的问题并且你已经有一个 CKRecordID。然后您所要做的就是使用您获得的这个 CKRecordID 获取 RecordWithID。
let publicDatabase = CKContainer.defaultContainer().publicCloudDatabase
publicDatabase.fetchRecordWithID(recordId, completionHandler: { (fetchRecord: CKRecord?, fetchError: NSError?) in
if let error = fetchError
{
// error getting user record, try again
print("-> cloudKitFetchUserRecord - error fetching user record - Error \(error)")
}
else
{
if let record = fetchRecord
{
if record.recordType == CKRecordTypeUserRecord
{
// valid record
print("-> cloudKitFetchUserRecord - fetching user record - valid record found - \(record.recordID.recordName))")
// unwrap your values - on your case username
if let object = record.objectForKey("username") as? Bool
{
// do something with object
}
}
else
{
// not valid record
print("-> cloudKitFetchUserRecord - fetching user record - The record that came back is not a CKRecordTypeUserRecord")
}
}
else
{
// record nil
print("-> cloudKitFetchUserRecord - fetching user record - fetch record returned nil")
}
}
})
关于ios - 使用 UserRecordID 获取 CloudKit 用户记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38674560/