在Swift中为CloudKit数据库设置参考值

时间:2019-02-05 17:26:29

标签: swift reference cloudkit

我正在尝试为CloudKit数据库中的记录设置一些值。我没有问题要在其他字段上设置任何其他类型的值,例如string或int,但对于Reference filedname(storyid)我却遇到此错误:

  

“无效尝试为类型的字段'storyid'设置值类型STRING   “故事页”,定义为:“参考”

func saveToCloud(note: String)
{

 let newpage = CKRecord (recordType: "Storypage")

 newpage.setValue(note, forKey: "pagecontent")

 newpage.setValue("UTENTE1", forKey:"username" )

 newpage.setValue("84EC8E60-1467-6411-5CDC-7E85DDB51C89", forKey: "storyid")

 database.save(newpage) { (record, error) in
 guard record != nil else {return}

}

1 个答案:

答案 0 :(得分:0)

参考字段存储CKReference object而不是字符串:

  

链接到另一条记录

     

将记录链接在一起并创建一个强大的   它们之间的关系,创建一个新的CKReference对象,初始化   它与所有者记录,并将该引用对象分配给一个字段   拥有记录。当您设计自己之间的关系时   记录,使所有者在两个相关记录中更为重要。

因此,您需要获取与新页相关的记录的recordID,然后使用该记录创建一个引用对象,然后可以使用该对象设置storyid字段。