小编voi*_*ref的帖子

在迁移期间添加和删除Realm.Object

我正在进行迁移,需要从领域中删除对象并用不同的类型替换它们.

简而言之,我曾经只有一种类型,现在正在创建一个层次结构,所以BaseItem现在需要是一个DerivedItem.

我不确定实现这一目标的最佳方法.

这是我要尝试的内容:

setSchemaVersion(kSchemaVersion, Realm.defaultPath, { migration, oldSchemaVersion in
    if oldSchemaVersion == 0 {
        let realm = Realm()
        realm.write({ () -> Void in
            old = oldObject!    
            if old["type"] as! Int == 1 {
                let textItem = TextItem()
                textItem.text = old["text"] as! String
                copyBaseItemCommon(old, textItem)
                realm.add(textItem)
                realm.delete(newObject!)
     }
})
Run Code Online (Sandbox Code Playgroud)

这些是添加和删除的方式吗?

更新:

试过这个和第3行中的代码死锁: let realm = Realm()

任何人都知道进行此类迁移的技术是什么?

migration realm swift

2
推荐指数
1
解决办法
4263
查看次数

标签 统计

migration ×1

realm ×1

swift ×1