2014-08-23 1 views
0

Я пытаюсь создать функцию облака, которая сохраняет объект-идентификатор отправителя и имя пользователя в виде массива, внутри массива «запрос», для цели и имеет объект targetId и имя пользователя, сохраненное как массив, в массиве «ожидающий» для отправителя.Добавление данных к пользователям, а затем их сохранение с использованием кода облака парсеров

Parse.Cloud.define("newGameRequest", function(request, response) {//A 
// Get the user who called the function 
var user = request.user; 

var target; 

var query = new Parse.Query(Parse.User); 
query.get(request.params.friendId, { 
success: function(object) { 

     var target = object; 

     var friendInfo = [target.objectId, target.username]; 
     var userInfo = [user.objectId, user.username]; 

     user.add("pending",friendInfo); 
     target.add("request",userInfo); 


     Parse.Object.saveAll([user, target], { useMasterKey: true }); 


    response.success("Success"); 

    }, 
    error: function(object, error) { 
     response.error(error); 
    } 
}); 

}); 

Глядя в браузере данных показывает, что массивы для каждого соответствующего пользователя были сохранены, но сохраняются с нулевыми значениями ([[NULL, NULL]] для обоих).

Вызов из устройства IOS, и заключается в следующем:

[PFCloud callFunctionInBackground:@"newGameRequest" 
        withParameters:@{@"friendId": self.friend.objectId} 
          block:^(NSString *result, NSError *error) { 
           if (!error) { 

           } 
           else { 
            NSLog(@"%@",result); 
           } 
          }]; 

self.friend.objectId была испытана и является правильным результатом.

В чем проблема с облачным кодом?

ответ

0

Я идиот.

получение объекта Идентификатор пользователя является, как следующее:

    user.id 

и получить имя пользователя сделано так:

    user.getUsername() 
Смежные вопросы