我有两门课:
public class Employee extends RealmObject {
@PrimaryKey
long id;
String name
Department department;
//getters setters etc.
}
public class Department extends RealmObject {
@PrimaryKey
int id;
String name;
//getters setters etc.
}
这是一对多的关系。一个部门可以有多名员工。我尝试提出一些疑问。
realm.where(Employee.class).equalTo("department.name", "deptName").findAll()
realm.where(Department.class).equalTo("employee.name", "empName").findAll()
第一个工作正常,第二个有错误:
无效查询:员工未引用类(class)。
如何使第二个起作用?我是否必须在部门类中创建员工的 RealmList?
我想在此查询中获取具有指定名称的员工的所有部门。
最佳答案
Realm 3.5.0+:
public class Employee extends RealmObject {
@PrimaryKey
long id;
String name
Department department;
//getters setters etc.
}
public class Department extends RealmObject {
@PrimaryKey
int id;
String name;
@LinkingObjects("department")
private final RealmResults<Employee> employees = null;
//getters setters etc.
}
realm.where(Employee.class).equalTo("department.name", "deptName").findAll()
realm.where(Department.class).equalTo("employees.name", "empName").findAll()
关于Android Realm 一对多关系、查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45780968/