0
您好我試圖查詢解析中的一對多關係。我有一個活動表和邀請表。一個事件有許多邀請,許多邀請是由一個事件創建的。事件表有一個名爲status
的列。狀態的值爲1
,這意味着所有者擁有。在邀請表中,我有一個也稱爲狀態的列,如果要進入某個事件,其他用戶將把狀態更新爲1.我成功創建了該表。現在我試圖嘗試查詢Event
和Invitation
表,其中狀態爲1
。但是我很難完成這項任務。下面是我的代碼:在解析中查詢一對多關係
ParseQuery<ParseObject> query = ParseQuery.getQuery("Event");
// Restrict to cases where the author is the current user.
//pass in a ParseUser and not String of that user
query.whereEqualTo("author", ParseUser.getCurrentUser());
query.whereEqualTo("Status", "1");
query.include("EventTitle");
ParseQuery<ParseObject> parseQuery = ParseQuery.getQuery("Invitation");
parseQuery.whereMatchesQuery("EventId", query);
// query.orderByAscending("createAt");
// Run the query
parseQuery.findInBackground(new FindCallback<ParseObject>() {
@Override
public void done(List<ParseObject> objectList, ParseException e) {
if (e == null) {
// If there are results, update the list of event and notify the adapter
Log.d(TAG, "Im in background");
// eventList.clear();
invitationList.clear();
for (ParseObject event : objectList) {
invitationList.add((Invitation)event);
}
Log.d(TAG, String.valueOf(invitationList.size()));
updateEventsList();
} else {
Log.d(TAG, "Event retrieval error: " + e.getMessage());
}
}
});
}
,當我嘗試在ListView顯示:
TextView tvTitle = (TextView)convertView.findViewById(R.id.textView_eventTitle);
錯誤:我得到一個空指針指示獲取可能需要。請我在做什麼錯
在您的代碼中有2個查詢,但只有一個'parseQuery'被提取。 –
@RobertRowntree我試圖匹配查詢來檢索不會工作的對象 –
@RobertRowntree將事件表中的EventId與Invitation表相匹配? –