2016-02-20 2 views
1

Я пишу функцию Разбор Cloud кодекса, чтобы добавить двойной в массив для системы голосования:Прикрепление данных в массив в облаке Разбор кодекса

Parse.Cloud.define("addVote", function(request){ 

    Parse.Cloud.useMasterKey(); 

    var id = request.params.key 
    var vote = request.params.vote 

    var query = new Parse.Query("Post"); 
    query.equalTo("objectID", id); 
    query.find({ 
     success: function(poll){ 
      poll.add("votes", vote) 
      poll.save(); 
     }, 
     error: function(error){ 
      console.error("Got an error"); 
     } 
    }); 
}); 

Я вызываю функцию с помощью:

PFCloud.callFunctionInBackground("addComment", withParameters: ["key" : key, "vote": self.vote)] 

Я получаю ответ «TypeError: объект не имеет метода« добавить ». Что я делаю неправильно, что вызывает эту ошибку?

+0

Похоже, вы пропустили закрывающий ']'. Это только здесь? –

+0

Что такое 'poll'? Где вы это определяете? Почему, по вашему мнению, у этого метода есть метод 'add'? –

+0

Чтобы ответить на комментарии от @AaronBrager: в этом сообщении я просто отсутствовал). Я уточнил свой вопрос, чтобы быть более точным. В js у меня создалось впечатление, что «опрос» будет возвращенным объектом, если запрос для сообщения был успешным («poll» будет объектом «Post», который содержит массив «голосов»). Это верно? – tjlsmith

ответ

0

Решение, которое я нашел:

Parse.Cloud.define("addVote", function(request){ 

    Parse.Cloud.useMasterKey(); 

    var id = request.params.key 
    var answer = request.params.vote 

    var query = new Parse.Query("Post"); 
    query.get(id, { 
     success: function(post){ 
      post.add("votes", vote); 
      post.save(); 
     }, 
     error: function(error){ 
      console.error("Got and error"); 
     } 
    }); 
}); 
Смежные вопросы