【问题标题】:CloudKit - help adding fields to recordType-CloudKit - 帮助向recordType添加字段-
【发布时间】:2016-05-28 09:35:07
【问题描述】:

我是初学者,到目前为止,我已经弄清楚了如何在 CloudKit 中以编程方式创建 RecordType。

我已经在网上搜索并几乎尝试了所有方法,但它们最有可能依赖于我还不了解的另一个变量。

这是我目前用于创建记录类型的代码-

import UIKit
import CloudKit    

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        let publicDB = CKContainer.defaultContainer().publicCloudDatabase     

        let muxID = CKRecordID(recordName: "MUX")                           
        let MUX = CKRecord(recordType: "MUX", recordID: muxID)


        publicDB.saveRecord(MUX) { savedRecord, error in                  // 
            // handle errors here


        }
    }

来自苹果开发网站,它提到添加类似字段(见下面的代码),但这不起作用。我想我在添加字段和向字段中添加数据之间感到困惑。

MUX["name"] = "peter"

我的项目中没有其他代码,我的故事板也没有对象,我想先以编程方式学习这一点,无需任何用户交互,以正确理解代码。

【问题讨论】:

  • 在开发环境中工作时,将数据添加到尚不存在的字段将创建该字段。换字段后写记录了吗?
  • 谢谢阿里-可能不是,因为我是新手,我所有的代码都在上面,如果你能提供帮助那就太好了。
  • 你能显示你在代码中的位置吗:MUX["name"] = "peter"
  • 当然-我在中间添加了它,让 MUX = CKRecord..........和 ​​publicDB.saveRecord........
  • 好的,所以当您说“它不起作用”时,具体有什么问题? IE。有错误吗?您没有在仪表板上看到该数据吗?

标签: ios swift cloudkit


【解决方案1】:

总结一下我们在 cmets 中发现的内容:

写入失败,因为记录已经存在。默认情况下,CloudKit 不允许在现有记录上写入新记录,它希望您读取记录,修改它,然后写入更改的记录。

更多信息,如果你还没有看过,我推荐Apple's 2014 WWDC intro to CloudKit

【讨论】:

    猜你喜欢
    • 2011-11-21
    • 1970-01-01
    • 1970-01-01
    • 2012-11-27
    • 2015-12-02
    • 1970-01-01
    • 2018-11-22
    • 2012-01-03
    • 1970-01-01
    相关资源
    最近更新 更多