如果方案更改,则创建新数据库

时间:2016-10-13 08:00:57

标签: ios swift realm

如果当前失败,我该如何创建一个新的领域数据库呢?我在某个地方阅读了它可能的新版本的领域,但我没有找到任何东西。

let documentsDirectory = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first!
let realmPath = "\(documentsDirectory)/db.realm"
let url = URL(string: realmPath)
let config = Realm.Configuration(fileURL: url, readOnly: false, schemaVersion: 1, migrationBlock: nil, objectTypes: nil)
Realm.Configuration.defaultConfiguration = config

1 个答案:

答案 0 :(得分:2)

Realm的Configuration结构有一个属性deleteRealmIfMigrationNeeded,这可能就是你要找的。

let config = Realm.Configuration(fileURL: url, readOnly: false, schemaVersion: 1, migrationBlock: nil, objectTypes: nil)
config.deleteRealmIfMigrationNeeded = true
Realm.Configuration.defaultConfiguration = config

如果需要迁移,它会删除并重新创建具有新架构的Realm文件。

请参阅文档:https://realm.io/docs/swift/2.0.2/api/Classes/Realm/Configuration.html#/s:vVC10RealmSwift5Realm13Configuration28deleteRealmIfMigrationNeededSb