我們面臨的問題是,我們無法使用新的模式版本進行遷移,因此我們想要清除所有的領域數據,並創建一個新的模式(對於架構版本低於此新數字的所有用戶)。如何在不打開領域文件的情況下檢查我的領域模式版本?
但我找不到方法讓我知道這個數字,除了只在遷移塊中。
有沒有辦法知道這個模式版本其他地方?
我們面臨的問題是,我們無法使用新的模式版本進行遷移,因此我們想要清除所有的領域數據,並創建一個新的模式(對於架構版本低於此新數字的所有用戶)。如何在不打開領域文件的情況下檢查我的領域模式版本?
但我找不到方法讓我知道這個數字,除了只在遷移塊中。
有沒有辦法知道這個模式版本其他地方?
從技術上講,您根本無法訪問Realm文件而檢查模式版本,但是您不需要完全訪問並指定匹配模式來只讀取模式版本。我們有這樣的功能。
從Objective-C中,你可以使用類方法:
+[RLMRealm schemaVersionAtPath:error:]
從境界斯威夫特,你可以使用免費的功能: schemaVersionAtPath(_:encryptionKey:error:)
。
謝謝這就是我想要的。 – SaintTail
let configCheck = Realm.Configuration();
do {
let fileUrlIs = try schemaVersionAtURL(configCheck.fileURL!)
print("schema version \(fileUrlIs)")
} catch {
print(error)
}
變種配置= RLMRealmConfiguration; let schemaVersion = config.schemaVersion //對模式版本執行操作。 –
返回0? – SaintTail
默認情況下,它會返回0.一旦你做了一些插入,或者你可以用你的新應用程序版本更新。 –