我正在使用Parse.com,我正在运行一个查询,该查询在多对多关系表中获取对象(调用此表' RelationTable')。显然,这个表有链接到另一个表中的对象(让我们调用这个SubObject)。现在,从这个查询中,我需要通过搜索SubObject中包含的字段来过滤结果(调用此SearchField)。
关于如何做到这一点的任何想法?我已经有了includeKey,我正在尝试使用'。' SQL中的运算符访问子类中的字段,但它不起作用。以下是我到目前为止的代码:
ParseQuery<ParseObject> query = ParseQuery.getQuery("RelationTable);
query.include("subObject"); //subObject is field name where SubObject is stored. Note CAPS difference
query.whereContains("SubObject.SearchField", searchString);
答案 0 :(得分:1)
您可以在用户对象上创建子查询,并在RelationTable查询中使用whereMatchesQuery:
ParseQuery<ParseObject> query = ParseQuery.getQuery("RelationTable);
query.include("subObject");
ParseQuery<ParseObject> innerQuery = ParseQuery.getQuery("SubObject");
innerQuery.whereContains("SearchField", searchString);
query.whereMatchesQuery("subObject", innerQuery);