嗨,我想知道如何从parseobject中获取parseuser对象。我需要这样做,因为parsequery返回一个列表。这是我的代码,谢谢你的帮助!
// get the currentUser
currentUser = ParseUser.getCurrentUser();
List<ParseObject> friendsList = currentUser.getList("friendsList");
// search for the person the user wants to add as a friend
List<ParseObject> userResults = new ArrayList<ParseObject>();
ParseQuery otherUserQuery = ParseUser.getQuery();
otherUserQuery.whereEqualTo("username", "jyo2");
try {
userResults = otherUserQuery.find();
} catch (ParseException e1) {
// fail
e1.printStackTrace();
}
// get the friend from the query if there was one and add it to the
// currentUser friends list
if (userResults.size() != 0) {
ParseObject currentObject = userResults.get(0);
friendsList.add(currentObject);
currentUser.put("friendsList", friendsList);
}
// save the update
try {
currentUser.save();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// try to view the friends
List<ParseObject> currentFL = currentUser.getList("friendsList");
ParseObject currentPU = currentFL.get(0);
System.out.println("THIS IS SIZE" + currentFL.size());
System.out.println(currentPU.get("name"));
最佳答案
在parse中使用现有的“user”类,但使用
@ParseClassName("_User")
public class PUser extends ParseUser {
据此article。实际上,在子类化此对象时,您特别需要引用用户“parseClassName”。它是超级毛茸茸的,我在这个问题上纠结了很久,因为对于其他类,您只需要使用parse数据浏览器中的字面名称“注册”parse类,在本例中是“user”、“info”、“post”等,但是user类特别需要下划线
编辑对不起,我应该提到,然后当您从查询中获取返回的对象时,您只需转换子类
PUser
。您可能需要将查询更改为用户查询,而不是对象查询。我知道这是一个老问题,但这对我来说并不清楚,也没有一个完整的线索关于这个问题,所以。希望这有帮助。