簡體   English   中英

如何在 Swift 中初始化 Realm 配置?

[英]How can I initialize a Realm configuration in Swift?

在 Kotlin 中,我將以下內容放在 MainApplication.kt 類中。

Realm.init(this);
val realmConfig: RealmConfiguration = RealmConfiguration.Builder()
    .name("app.realm")
    .schemaVersion(0)
    .build()
Realm.setDefaultConfiguration(realmConfig)

之后,我可以使用以下代碼獲取默認 Realm 的實例:

val realm: Realm? = Realm.getDefaultInstance()

Swift 中的等效代碼是什么? 我應該把它放在哪里,以便可以從我的應用程序中的任何地方訪問該實例? 我應該把它放在 AppDelegate.swift 中嗎?

我所知道的是,在讀取和寫入我的 Realm 時,我應該使用以下代碼,但是首先我需要編寫什么來配置數據庫? 我以后如何獲取該默認配置?

let realm = try? Realm()  

當您在 Swift 中初始化一個 Realm 時,您本身並不是在創建一個新的數據庫,而是在創建一個可以容納一個或多個 Realm 的容器,或者引用 try! 創建的默認 Realm! 領域()。 所以,如果你想在你的應用程序中訪問同一個 Realm,就像在每個類中重新初始化它一樣簡單(聽起來很奇怪),或者,如果你正在配置你的領域,在每次初始化時向它傳遞相同的配置屬性.

我不了解 Kotlin,但據我所知,您正在嘗試將配置詳細信息傳遞給新的 Realm 實例。 要在 swift 中做到這一點,首先創建您的配置對象,然后使用它來初始化 Realm 本身(將它放入 didFinishLaunchingWithOptions 中的 App Delegate,然后確保在其他類中使用相同的配置):

let config = Realm.Configuration(
fileURL: <URL?>, //i think this is the "name" property equivalent
schemaVersion: <UInt64>,
)

然后,當您初始化 Realm 實例時:

let realm = try! Realm(configuration: config)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM