解析:如何向用户添加对象,该用户不是当前用户

时间:2015-01-16 19:19:59

标签: android parse-platform associated-object

我创建了自己的应用,其中创建了多个用户。挑战在于,我需要以一种方式构建应用程序,当我以用户身份登录(比如用户A)时,我可以将输入对象添加到另一个用户(比如用户B)。因此,当我以用户A身份登录时,我可以输入将保存到用户B的空字段之一的数据。你可以帮助哪种方式,我可以安排这个吗?简而言之,如何创建与用户B关联的对象。

这是事情,当我以用户A身份登录时,我想添加"分数"例如,对于用户A和B,如果用户A的分数是7,并且B的分数是20,我可以在登录活动A时添加分数,并且它们将被添加到该领域"分数"相应的用户。

2 个答案:

答案 0 :(得分:2)

you should go for parse cloud code which is written in java script

refer this link to know more
https://parse.com/docs/js/guide#cloud-code

then you just edit main.js
deploy and call that cloud code from your code

// Use Parse.Cloud.define to define as many cloud functions as you want.
// For example:
Parse.Cloud.define("updateTable", function(request, response) {
var currentUserId=request.params.currentLoggedinUser;
var userToBeUpdatedId=request.params.userToBeUpdated;

  var User = Parse.Object.extend('_User'),
          user = new User({ objectId: userToBeUpdatedId });

   user.addUnique("followers",currentUserId);

    Parse.Cloud.useMasterKey();
    user.save().then(function(user) {
        response.success(user);
    }, function(error) {
        response.error(error)
    });

});

deploy this code using  comand "parse deploy" from terminal.
call this code from your code like

ParseCloud.callFunction("updateTable", params);

i hope it will help.

答案 1 :(得分:0)

默认设置Parse的方式是,只能在User表中编辑当前用户数据。您可能可能会更改表的设置,但这可能会导致安全问题。

我建议创建一个'得分'表。在那里,每个用户可以有一行。带有'userID'列,其中包含用户的objectId以引用用户。然后,您可以有一个分数列,您可以随时更新。

除了将用户的objectId存储在userID列中之外,您还可以在Scores行和用户之间建立关联。有关如何创建关联的信息,请参阅Parse文档。 https://parse.com/docs/android_guide#users-associations