RealmにはStandalone ObjectというRealmの管理化に置かれていない状態と、そうでない状態がある。
判定する方法は簡単で、RLMObject
のrealm
プロパティを参照すればよい。
Realm Objective-Cのコードだがこのようにメソッド生やしておけば役に立つ。
extension RLMObject {
var isStandalone: Bool {
return self.realm == nil
}
}
ユースケース
キャッシュ(Realm)から取得されたのか、ネットワーク上からStandalone Objectにマッピングされたのかを判断するのに使える。