Android Realm一对多关系,查询

kkk*_*kkk 2 android one-to-many relationship realm realm-mobile-platform

我有两节课:

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.
}
Run Code Online (Sandbox Code Playgroud)

这是一对多的关系。一个部门可以有多名员工。我试图提出一些疑问。

realm.where(Employee.class).equalTo("department.name", "deptName").findAll()
realm.where(Department.class).equalTo("employee.name", "empName").findAll()
Run Code Online (Sandbox Code Playgroud)

第一个正在工作,第二个有错误:

无效的查询:员工未引用类。

如何使第二个工作?我是否必须在Department类中创建员工的RealmList?

我想在此查询中获取所有具有指定名称雇员的部门。

Epi*_*rce 5

领域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()
Run Code Online (Sandbox Code Playgroud)