【发布时间】:2016-04-29 12:58:45
【问题描述】:
【问题讨论】:
标签: android realm realm-list
【问题讨论】:
标签: android realm realm-list
编辑: 从 Realm 3.5.0 开始,您实际上可以使用评论部分中提到的“反向链接”。高兴!
其实从 Realm 3.0.0 开始,双向链接是性能瓶颈,所以使用反向链接是首选方式。
它的工作方式是:
public class User extends RealmObject {
private RealmList<Dog> dogs;
}
public class Dog extends RealmObject {
@LinkingObjects("dogs")
private final RealmResults<User> owners = null;
}
现在你可以这样做了:
realm.where(Dog.class).equalTo("color", "Brown").equalTo("owners.name", "John").findAll();
旧答案:
如果您有指向该用户的对象链接,则您只能使用给定的用户搜索 dogs。
public class Dog extends RealmObject {
//...
private User user;
}
那你就可以了
realm.where(Dog.class).equalTo("color", "Brown").equalTo("user.name", "John").findAll();
【讨论】: