2016-08-05 3 views
0

私にはオブジェクトPersonがあり、この人物にはCityというインスタンスがあります。 都市を作成して人に設定した場合、後でその人を最初に削除したり、nullに設定することなく都市を削除できます。レルム内の別のオブジェクトから参照されるオブジェクトの削除を防止するにはどうすればよいですか?

これは予期された動作ですか?それを変更する方法はありますか?「何もしない」、「nullを設定する」、または「カスケード」に設定できる「削除アクション時」のリレーショナルデータベースのように機能しますか?

答えて

1

カスケード削除は、レルムではまだサポートされていません。ここで問題を追跡するだけでなく、いくつかの回避策も提案されています:https://github.com/realm/realm-java/issues/1104

ここでも解決策があります。次のような独自のカスタム "cascadeDelete"メソッドを追加してください:

public class Foo extends RealmObject { 
    public RealmList<Foo> list; 
    public String name; 

    public void cascadeDelete() { 
    list.deleteAllFromRealm(); // The cascade part 
    deleteFromRealm(); // delete this object 
    } 
} 
関連する問題