0

我有 3 种记录类型,其中包含如下属性:

客户

用户名:字符串

轮廓图像:UIImage

评论

用户:客户参考

消息:字符串

店铺

评论:评论参考列表

我可以从 Shop CKRecord 对象中获取客户端用户名和 ProfilImage 吗?我可以这样做吗:

  1. 从商店记录中获取评论参考
  2. 从找到的每个评论参考中获取用户参考
  3. 最后从商店记录的评论参考的用户参考中获取用户名和配置文件

如果有一条路径,那么最好的方法是什么?

4

1 回答 1

0

这是第 1 步的示例。其他步骤将与您列出的步骤类似,级联上一步的结果。(注意:不需要显式的 CKReference 字段,因为它们可以从 CKRecord 变量中收集,但我想让示例更具可读性)

struct Shop {
  // other variables....
  var record : CKRecord?
  var commentRef : CKReference?
}

struct Comment {
  // other variables....
  var record : CKRecord?
  var clientRef : CKReference?
}

var shops : [Shop]
var comments : [Comment]

func commentsWithReference(ref: CKReference) -> [Comment] {
  let matchingComments = comments.filter {$0.record!.recordID == ref.recordID }
  return matchingComments
}

let shopComments = shops.map { commentsWithReference($0.commentRef!) }
于 2016-05-19T02:50:33.783 回答