如何查询为空的关系?
How to query for relations that are empty?
我有两个具有一对多关系的 类:
@Entity()
class Lesson {
final course = ToOne<Course>();
}
@Entity()
class Course {
@Backlink('course')
final lessons = ToMany<Lesson>();
}
我想查询不属于任何课程的所有课程。以下不起作用:
final qb = _box.query(Lesson_.course.isNull());
原因在issue中解释。
所以我必须这样做:
final qb = _box.query(Lesson_.course.equals(0));
对此有更好的或推荐的方法吗?
是的,对于 Dart 的 ObjectBox,在 ToOne 上添加等于 0 条件是查找没有 ToOne 目标的对象的方法:
final noToOneTargetQuery = box.query(Entity_.toOne.equals(0)).build();
有关更多信息,请参阅 ObjectBox for Dart test code。
我有两个具有一对多关系的 类:
@Entity()
class Lesson {
final course = ToOne<Course>();
}
@Entity()
class Course {
@Backlink('course')
final lessons = ToMany<Lesson>();
}
我想查询不属于任何课程的所有课程。以下不起作用:
final qb = _box.query(Lesson_.course.isNull());
原因在issue中解释。
所以我必须这样做:
final qb = _box.query(Lesson_.course.equals(0));
对此有更好的或推荐的方法吗?
是的,对于 Dart 的 ObjectBox,在 ToOne 上添加等于 0 条件是查找没有 ToOne 目标的对象的方法:
final noToOneTargetQuery = box.query(Entity_.toOne.equals(0)).build();
有关更多信息,请参阅 ObjectBox for Dart test code。