我是Realm的新手,也是一般的迁移新手。我的问题是,如果我设置了几个迁移,当用户第一次下载应用程序时会发生什么?新下载的应用程序是否会进行所有迁移?或者它只是使用最新的架构版本?默认的Realm架构版本是否设置为0?
我正在使用Swift,这是我正在使用的代码:
// Realm Migration Schema Versions.
let migrationBlock: RLMMigrationBlock = { migration, oldSchemaVersion in
if oldSchemaVersion < 1 {
migration.enumerateObjects(*CLASSNAMEHERE*.className()) { oldObject, newObject in
// Perform migration here.
}
println("Migration for Schema Version 1 complete.")
}
}
RLMRealm.setDefaultRealmSchemaVersion(1, withMigrationBlock: migrationBlock)
答案 0 :(得分:2)
在Realm中,您从磁盘架构版本迁移到您指定的架构版本。您认为架构版本从零开始是正确的,因此即使用户第一次运行应用程序,您提供的迁移也会运行。
答案 1 :(得分:1)
应通过领域配置在应用程序中设置当前架构版本。这样新用户就不会进行迁移。