我想要一个关于对象的查询,该对象又具有一个属性,该属性是另一个对象,但如果可以直接完成则不需要。 我使用这个功能:
public static RealmList<Action_DB> getActions(Realm realm, int id){
Holograma_DB holo = realm.where(Holograma_DB.class).equalTo("id",id).findFirst();
return realm.where(Action_DB.class).equalTo("holo",holo).findAll();
}
类 Action_DB 是:
public class Action_DB extends RealmObject{
@PrimaryKey
private int id;
private String a;
private Video_DB v;
private int ver;
private Holograma_DB holo;
...
}
作为返回,我得到一个语法错误,我不知道是因为我做得不好还是做不到。
现在我有一个可能的解决方案,如果他们无法列出与全息图对象关联的 Action ,但我想知道是否可以在查询中完成所有操作。
最佳答案
您不能使用对象查询 equalTo,只能使用 String、int、long 等。参见 RealmQuery获取完整列表。
在您的情况下,您可能会查询 holo
变量的 id
Holograma_DB holo = realm.where(Holograma_DB.class).equalTo("id",id).findFirst();
return realm.where(Action_DB.class).equalTo("holo.id", holo.getId()).findAll();
关于java - Realm-Android 如何搜索包含某些对象的对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37744394/