gpt4 book ai didi

android - 添加两个用户来解析对象和查询

转载 作者:行者123 更新时间:2023-11-30 02:46:01 25 4
gpt4 key购买 nike

我想创建一个包含两个用户的解析对象,并使用这两个用户查询该对象。我的获取其他用户方法返回我想添加到组中的其他用户。

String id;
final ParseUser[] user = new ParseUser[1];

public void getOtherUser()
{
ParseQuery<ParseUser> query = ParseUser.getQuery();
query.whereEqualTo("username", "amanda");
query.findInBackground(new FindCallback<ParseUser>() {
public void done(List<ParseUser> objects, ParseException e) {
if (e == null) {
user[0] = objects.get(0);
addUserGroup();

} else {
// Something went wrong.
}
}
});
}

我的添加用户组创建了一个包含两个用户的解析对象

private void addUserGroup()
{
final ParseObject group = new ParseObject("UserGroup");
group.put("from", ParseUser.getCurrentUser());
group.put("to", user[0]);
group.saveInBackground((new SaveCallback() {
public void done(ParseException e) {
id = group.getObjectId();
}
}));

}

完成此操作后,我希望能够使用新内容更新解析对象并根据两个用户查询该对象。尽管以下方法对我不利,但我不确定为什么。

 private void getData()
{
final double[] result = {0};
ParseQuery<ParseObject> query = ParseQuery.getQuery("UserGroup");
query.whereEqualTo("from",ParseUser.getCurrentUser() );
query.whereEqualTo("to", user);
query.findInBackground(new FindCallback<ParseObject>() {
public void done(List<ParseObject> commentList, ParseException e) {
Log.d("found", "woohoo");
}
});

它返回以下错误 java.lang.IllegalArgumentException:ParseObject 的无效类型:class [Lcom.parse.ParseUser;

有人知道为什么会这样吗?

最佳答案

当您调用 ParseUser.getCurrentUser() 解析时返回一个用户对象。现在假设您要查询用户名,您需要将 ParseUser.getCurrentUser() 更改为 ParseUser.getCurrentUser().getUsername()

private void addUserGroup()
{
final ParseObject group = new ParseObject("UserGroup");
group.put("from", ParseUser.getCurrentUser().getUsername());
group.put("to", user[0]);
group.saveInBackground((new SaveCallback() {
public void done(ParseException e) {
id = group.getObjectId();
}
}));

}

private void getData()
{
final double[] result = {0};
ParseQuery<ParseObject> query = ParseQuery.getQuery("UserGroup");
query.whereEqualTo("from",ParseUser.getCurrentUser().getUsername() );
query.whereEqualTo("to", user);
query.findInBackground(new FindCallback<ParseObject>() {
public void done(List<ParseObject> commentList, ParseException e) {
Log.d("found", "woohoo");
}
});
}

关于android - 添加两个用户来解析对象和查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25006202/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com