Ошибка миграции.
Большинство из них можно решить, просто обновив schemaVersion .
Область .ваш модальный режим изменился и решает для вас основные проблемы.
Если ваши модальные изменения были более сложными и должны поддерживать обратную совместимость, вам придется объяснить realm , как выполнить миграцию.
Простой способ сделать это - использовать собственный getRealm вместо общего экземпляра по умолчанию:
func getRealm() -> Realm {
var config = Realm.Configuration(
// Set the new schema version. This must be greater than the previously used
// version (if you've never set a schema version before, the version is 0).
schemaVersion: 2, // This is the number you should update!
// Set the block which will be called automatically when opening a Realm with
// a schema version lower than the one set above
migrationBlock: { migration, oldSchemaVersion in
// We haven’t migrated anything yet, so oldSchemaVersion == 0
if (oldSchemaVersion < 1) {
// Nothing to do!
// Realm will automatically detect new properties and removed properties
// And will update the schema on disk automatically
}
})
do {
return try Realm.init(configuration: config)
} catch {
return try! Realm.init(configuration: config)
}
}
Объяснение простой миграции: https://medium.com/@shenghuawu/realm-lightweight-migration-4559b9920487