0
デフォルトで 'CKFetchRecordChangesOperation'が機能しないため、レコードを移行する必要があります。私はそれを一つずつマイグレーションすべきか、それとも自動的にそれを行う方法はありますか?ckrecordsをデフォルトのゾーンからカスタムゾーンに移行するにはどうすればよいですか?
デフォルトで 'CKFetchRecordChangesOperation'が機能しないため、レコードを移行する必要があります。私はそれを一つずつマイグレーションすべきか、それとも自動的にそれを行う方法はありますか?ckrecordsをデフォルトのゾーンからカスタムゾーンに移行するにはどうすればよいですか?
はい、1つずつ実行する必要があります。
func newRecord(from record: CKRecord, newZone: CKRecordZone) -> CKRecord {
let recordID = CKRecordID(recordName: record.recordID.recordName, zoneID: newZone.zoneID)
let newRecord = CKRecord(recordType: "Goal", recordID: recordID)
newRecord["startDate"] = record["startDate"]
newRecord["endDate"] = record["endDate"]
newRecord["hours"] = record["hours"]
return newRecord
}
と
CKDatabase
に保存する:あなたは、古いゾーンからすべてフェッチし、このような新しいカスタムゾーンの新しいものを作成する必要があります。