Parse Cloud Code中指针的对象

时间:2015-03-13 18:22:45

标签: parse-platform

我试图创建我的第一个Parse Cloud Code功能并遇到问题:

Parse.Cloud.afterSave("Message", function(request) {

  var fromUser = request.object.get("fromUser");
  var toUser = request.object.get("toUser");

  console.log(fromUser); // user pointer
  console.log(toUser); // user pointer

});

正如您所看到的,当我真正想要的是用户对象本身时,fromUsertoUser都是指针。这样做的最佳方式是什么?

2 个答案:

答案 0 :(得分:0)

您可以创建新查询以获取用户信息。

var query = new Parse.Query(Parse.User);

query.get(request.object.get('fromUser').id, {
    success: function(user) {
        // What you want with user informations
    },
    error: function() {}
});

你可以试试这个,但我从未尝试过。

var query = new Parse.Query(Parse.User);

query.equalTo('objectId', request.object.get('fromUser').id);
query.equalTo('objectId', request.object.get('toUser').id);

query.find({
    success: function(users) {
        // What you want with users information
    },
    error: function() {}
});

答案 1 :(得分:0)

我为时已晚,但我希望这能奏效

您可以使用

Parse.Cloud.beforeSave("Message", function(request, response) { ....

Parse.Cloud.afterSave("Message", function(request) { ....

这是使用beforeSave的方法

Parse.Cloud.beforeSave("Message", function(request, response) {
    var message = request.object;
    var fromUser = message.get("fromUser"); // you must have this User object, if it's null, then the object is null in the table
    var toUser = message.get("toUser");

// fromUser and toUser columns must be Pointer<User> and have values

    }).catch(function(error) {
        response.error("Error finding message " + error.code + ": " + error.message);
    });

    });