2016-07-16 87 views
0

我需要從Realm Cocoa數據庫中刪除舊的空模型。用Swift刪除Realm模型

似乎有a way to do it in Java,但不是在Swift中。那是對的嗎?

如果你刪除一個屬性,並啓動遷移境界取消相應的列在表中:

class Dog: Object { 
    dynamic var name = "" 
    // dynamic var age = 0 
} 

但是,如果刪除模型定義完全,遷移確實刪除表:

// class Dog: Object { 
// dynamic var name = "" 
// dynamic var age = 0 
// } 

下面是境界瀏覽器顯示空表我想刪除一個截圖:

realm browser empty tables

回答

0

您可以在您的遷移塊中調用Migration.deleteData(_:)來指定應從Realm文件中完全刪除指定的類。

+1

謝謝!這很好。另外,如果其他人發現這一點,不要忘記也刪除你的模型定義。否則,即使在調用Migration.deleteData(_ :)後,您仍然會得到空表。 –

+1

你能詳細說明你的完整代碼嗎?謝謝! – user3745888

0

對於那些誰是JavaScript的工作:

migration: (oldRealm, newRealm) => { 
    if (oldRealm.schemaVersion < *version*) { 
    newRealm.deleteModel('MODEL-NAME') 
    } 
}