直接代码。我们有两个班级:
class Rocket extends RealmObject
{
@PrimaryKey
private long id;
private String name;
private Payload pl;
}
class Payload
{
private String name;
private double mass;
}
如何在领域存储火箭?
如果需要我可以实现Serializable或Parcelable接口,但我真的需要将我的对象保存到Realm中。
谢谢。
答案 0 :(得分:1)
看起来您明显的解决方案(扩展RealmObject
)主要关注的是,当您删除父Payload
时,您要删除Rocket
。不幸的是,级联删除了are not yet supported。您的选择是:
Rocket
对象之外完成)Payload
扩展RealmObject
并为其提供与Rocket
个对象相同的主键,然后同时删除它们(通过相同的密钥)我推荐第二种解决方案,以及类似以下的方法:
private void deleteRocket(long id) {
realm.where(Rocket.class).equalTo("id", id).findFirst().removeFromRealm();
realm.where(Payload.class).equalTo("id", id).findFirst().removeFromRealm();
}