仅访问对象框ToMany关系的ID

时间:2019-02-22 06:41:22

标签: java android objectbox

在访问对象框的ToMany(无反向链接)关系的元素时,将查询数据库中的元素。 有没有一种更快的方法,仅访问ID而不查询其实体?

1 个答案:

答案 0 :(得分:1)

不,(当前)没有ToToy,它不是ToOne的@Backlink

这可能是功能请求的一部分,可以在不加载所有实体的情况下进行ToMany编辑。 https://github.com/objectbox/objectbox-java/issues/510

完成操作:如果ToMany ToOne的@Backlink,则可以查询ToOne ID属性等于拥有ToMany的实体的相关实体。一个例子:

@Entity class Customer {
    @Id long id;
    @Backlink(to = "customer") ToMany<Order> orders;
}

@Entity class Order {
    @Id long id;
    ToOne<Customer> customer;
}

long[] orderIds = orderBox.query()
    .equal(Order_.customerId /* virtual property */, customer.id)
    .build()
    .findIds()