更新其他实体中的实体 - 对象框

时间:2018-02-23 23:36:22

标签: android kotlin objectbox

我正在使用Objectbox并设置了几个实体。我的实体包含对其他实体的引用。例如:

@Entity 
class EntityA {

    @Id
    var id: Long = 0
    lateinit var bEntities: ToMany<EntityB>

    fun addB(b: EntityB) {
        bEntities.add(b)
        b.entityA.target = this
    }
}


@Entity 
class EntityB {

    @Id
    var id: Long = 0
    lateinit var entityA: ToOne<EntityA>
}

我可以创建EntityA并将其链接到我的所有EntityB。然后我能够存储EntityA并将所有信息与链接到它的EntityB对象一起恢复。

我的问题是:如果我想更新链接到EntityA的EntityB之一,我是否必须获取EntityB的Box并将更新的对象放在该框中?或者我应该能够通过更改它的值来更新EntityB对象,然后更新包含EntityB对象的EntityA Box吗?

1 个答案:

答案 0 :(得分:0)

如果更新entityB,请使用boxB将其放入。

如果向entityA添加新的enititB对象:只需使用boxA放置entityA,并且对包含新的entityB对象的关系的所有更改都是持久的。