2015-01-21 2 views
0

Я пытаюсь сделать запрос, чтобы получить некоторые данные из моей базы данных, но я не могу понять, как это сделать.Как сделать запрос запросов базы данных Parse?

Моя база данных выглядит следующим образом:

_User

| objectId | имя пользователя | пароль | группы (отношение (имя_группы)) | .. |

Группа

| objectId | group_name | .. |

активность

| objectId | activity_name | группы (указатель (objectId)) | .. |

Моя цель - показать все действия, с которыми связан текущий пользователь (вошел в систему). Таким образом, пользователь может быть частью группы (отношения), и группа может иметь несколько действий. Действия имеют указатель на Group.objectId. Как я могу показать действия группы, членом которой является текущий пользователь?

В настоящее время это мой код:

ParseObject current = ParseUser.getCurrentUser(); 
    ParseRelation relation = current.getRelation("groups"); 
    ParseQuery query = relation.getQuery(); 

    ParseObject test = new ParseObject("group"); 
    String ObjectId = test.getObjectId(); 

    ParseQuery<ParseObject> query2 = new ParseQuery<ParseObject>("Activity"); 
    query2.whereEqualTo("group_name", ObjectId); 

..

@Override 
    protected void onPostExecute(Void result) { 
    // Locate the listview in listview_main.xml 
    listview = (ListView) findViewById(R.id.listview); 
    // Pass the results into an ArrayAdapter 
    adapter = new ArrayAdapter<String>(MainActivity.this, R.layout.activity_main_listview_item); 
    // Retrieve object "name" from Parse.com database 
    for (ParseObject query : ob) { 
     adapter.add((String) query.get("activity_name")); 
    } 

Ответ в руководстве Разбор:

Parse Guide

ответ

0

не уверен, что вы могли бы сделать следующее с 2-запросов ...

Получить набор групп для CurrentUser как queryResult $ myGroupQ множество групп, которые пользователь принадлежит

Query 2 с помощью «запроса .include ("группы")

Запрос 2 query.Activity с Условием:

query.whereContainedIn("groups", $myGroup); 

пока вар MyGroup является OfType = Массив, это должно работать.

так что использование $ MyGroup из QRY1, как ограничение setOfValues ​​в запросе # 2 в "containedIn"

из раздела андроид DOCS на ограничений запросов