我试图创建我的第一个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
});
正如您所看到的,当我真正想要的是用户对象本身时,fromUser
和toUser
都是指针。这样做的最佳方式是什么?
答案 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) { ....
。
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);
});
});