我需要Parse查询的帮助。我有三个类在这种关系中有指针。活动类,其中“video”列指向Video类,其中另一列“videoOwner”指向_User类。我想要实现的是查询Activity类的视频,并从_User类获取相关所有者的详细信息。我试过这个
ParseQuery<ParseObject> activityQuery = ParseQuery.getQuery("Activity");
activityQuery.setLimit(1000);
activityQuery.whereEqualTo("video", ParseObject.createWithoutData("Video", objectID));
activityQuery.whereEqualTo("type", "comment");
activityQuery.whereExists("video");
activityQuery.include("video");
activityQuery.include("video.videoOwner");
activityQuery.findInBackground(new FindCallback<ParseObject>() {
public void done(List<ParseObject> vList, ParseException e) {
if (e == null) {
for (int i = 0; i != vList.size(); i++) {
commenterUsername = vList.get(i).getParseObject("video.videoOwner").getString("username");
commenterName = vList.get(i).getParseObject("video").getParseObject("videoOwner").getString("fullName");
Log.e("User", commenterUsername);
}
}
else {
}
}
});
但它在Log处发生冲突,因为commenterUsername为null。任何有助于我进行此查询的帮助都非常受欢迎,因为如果有一个简单而清晰的解决方案,我不想做太多的查询。谢谢
答案 0 :(得分:1)
在您发布的代码中,您的getParseObject("video.videoOwner")
无效。
getParseObject("video.videoOwner")
应为getParseObject("video").getParseObject("videoOwner")
点符号仅适用于include语句,因此您必须获得这样的单个对象。