如何在RealmSwift中避免迁移

时间:2016-07-04 23:16:27

标签: swift migration realm

我只是使用Realm测试一些配置,因此我在我的领域类中添加和删除了变量和列表。由于我只是在测试,我不想完成迁移过程 - 我也没有任何有关连续性的数据。

有没有办法让Realm自动请求迁移?

2 个答案:

答案 0 :(得分:23)

无论架构更改如何,都有两种方法可以跳过迁移错误。

  1. 使用deleteRealmIfMigrationNeeded属性。如果是true,则在需要迁移时使用提供的模式重新创建Realm文件。

    let config = Realm.Configuration(deleteRealmIfMigrationNeeded: true)
    Realm.Configuration.defaultConfiguration = config
    
    let realm = try! Realm()
    ...
    

  2. 每次启动时增加架构版本。 Realm具有自动迁移功能。如果您不需要迁移现有数据,则只需增加架构版本即可。架构将由Realm自动更改。

    let config = Realm.Configuration(schemaVersion: try! schemaVersionAtURL(Realm.Configuration.defaultConfiguration.fileURL!) + 1)
    Realm.Configuration.defaultConfiguration = config
    
    let realm = try! Realm()
    ...
    

答案 1 :(得分:1)

Swift 4

var config = Realm.Configuration()
config.deleteRealmIfMigrationNeeded = true
Realm.Configuration.defaultConfiguration = config