迁移多个领域 – 领域版本大于模式版本exception

为什么抛出这个exception(当我试图迁移多个域)?

bool ObjectStore::is_schema_at_version(Group *group, uint64_t version) { uint64_t old_version = get_schema_version(group); if (old_version > version && old_version != NotVersioned) { throw ObjectStoreException(ObjectStoreException::Kind::RealmVersionGreaterThanSchemaVersion, {{"old_version", to_string(old_version)}, {"new_version", to_string(version)}}); } return old_version != version; } 

首先,我需要以正确的方式实例化realmconfig。

 RLMRealmConfiguration *someOtherConfig = [[RLMRealmConfiguration defaultConfiguration] copy]; 

代替:

 RLMRealmConfiguration *someOtherConfig = [[RLMRealmConfiguration alloc] init]; 

我需要删除额外的schemaVersionconfiguration和冗余migrationblocks:

 config.schemaVersion = migrationVersion; 

在执行实际迁移之前:

 [RLMRealm migrateRealm:someOtherConfig];