我在尝试保存ParseRelation时遇到了一些问题。我首先尝试创建ParseUser(我认为这是问题所在),但它仍在继续发生。
情况:我有2个表,一个是User(Parse.com默认),另一个是Teams。在后者内部,有一个ParseRelation to User。在触发saveInBackground之后,我检查了DataBrowser,我可以看到该团队实际上已经创建但是玩家没有添加关系。
我的代码:
ParseObject newTeam = new ParseObject(Constants.TABLE_TEAMS);
newTeam.put(Constants.ATTRIB_TEAM_NAME, nombreEquipo);
// FIXME ParseRelation not being saved
ParseRelation<ParseUser> playersRelation = newTeam
.getRelation(Constants.ATTRIB_TEAM_PLAYERS);
// Get Users from ListView
for (int i = 0; i < invitedPlayers.size(); i++) {
ParseUser pu = (ParseUser) viewPlayerList.getItemAtPosition(i);
playersRelation.add(pu);
Log.d(LOG_TAG,
"Player being added: "
+ pu.get(Constants.ATTRIB_USER_NAME));
}
newTeam.put(Constants.ATTRIB_TEAM_PLAYERS, playersRelation);
newTeam.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
if (e == null) {
// setResult(RESULT_OK);
Toast.makeText(getApplicationContext(), "Team created.",
Toast.LENGTH_SHORT).show();
finish();
} else {
Toast.makeText(getApplicationContext(),
"ParseException: " + e.getMessage(),
Toast.LENGTH_SHORT).show();
}
}
});
有什么想法吗?我已经阅读了文档并检查了一些示例,但似乎无法找出问题所在。
编辑:使用Parse.com v1.5.0和Android 4.4.2