我正在尝试进行查询以获取某些对象。事情是..我不知道如何进行查询以获得与数组匹配的对象。用户可以是多个组的成员,因此这些组的名称作为数组存储在User.group中。我试图获取当前用户所属的类“Group”的所有对象。我想出了这个:
ParseQuery query1 = ParseQuery.getQuery("_User"); //selects User Class
query1.whereEqualTo("username", current_user.toString()); //selects current user
query1.include("groups"); //include 'groups' of type array with names of the groups that the user is a member of
ParseQuery query2 = ParseQuery.getQuery("Group"); //select Groups Class
query2.whereContainedIn("group_name", ?); //<-- Get objects where group_name matches a value in the User.groups
最后一行代码显然不是这样做的。我已经看过Parse Guide了!非常感谢帮助!
答案 0 :(得分:1)
经过一些挖掘和测试后,我想出了一个解决方案。实际上并不困难..
ParseQuery<ParseObject> groupQuery = new ParseQuery<ParseObject> ("Group");
groupQuery.include("array");
groupQuery.whereEqualTo("array", ParseUser.getCurrentUser().getUsername());
此代码选择类“Group”,该类具有一个数组,其中包含名为“members”的所有用户名,如下所示:[“user1”,“user2”,“..”]。包含此数组。最后一行代码选择用户所属的所有对象。