CloudKit-справка по добавлению полей в recordType-

I am a begineer, and so far have worked out how to create a RecordType within CloudKit programmaticaly.

Я искал в интернете и в значительной степени перепробовал все методы, но они не работают, скорее всего, полагаясь на другую переменную, которую я еще не понимаю.

вот мой код, который работает до сих пор для создания 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


        }
    }

На сайте Apple dev упоминается добавление таких полей, как (см. код ниже), но это не работает. Я думаю, что я путаюсь между добавлением полей и добавлением данных в поля.

MUX["name"] = "peter"

У меня нет другого кода в моем проекте и моя раскадровка не имеет никаких объектов, я хотел бы сначала изучить это программно без какого-либо взаимодействия с пользователем, чтобы правильно понять код.

1 ответ

  1. Чтобы резюмировать то, что мы нашли в комментариях:

    Ошибка записи, так как запись уже существует. По умолчанию CloudKit не позволяет записывать новую запись поверх существующей, он ожидает, что вы прочитаете запись, измените ее, а затем напишите измененную запись.

    Для получения дополнительной информации, если вы еще не просматривали его, я рекомендую Apple 2014 WWDC intro to CloudKit .