只有一些我的解析对象更新(总是9,但没有更多),当我运行这个javascript解析云代码
Only some of my parse object update (Always 9 but no more) when I run this javascript parse cloud code
Parse.Cloud.define("getPicks", function(request,response){
var picks = new Parse.Query("Picks");
var num=0;
picks.find({
success: function(results)
{
if ( results.length == 0 )
{
// No picks in databade
response.success("No picks are live");
}
else
{
for(var i=0;i<results.length;i++){
result=results[i];
result.set("winningTeam",3);
result.save();
num++;
}
response.success("Found "+results.length+" pick objects!"+" num is "+num);
}
},
error: function(error) {
response.error("Query failed. Error = " + error.message);
}
});
});
我试图更新所有这些选择对象设置他们的获胜团队为"3",我想做一些与数据库中的每个对象(我将这样做后,我有这个理顺),然后设置"winningTeam"字段为3。它工作正常,但出于某种原因,如果我说…数据库中有20个对象,运行代码时只有9个被更新,如果有50个对象,9个被更新,如果有9个或更少,它们都被更新,我不知道为什么。我是新的解析云和javascript,所以我可能只是做了一些愚蠢的事情或没有保存正确的idk,但它找到所有的对象,但只更新其中的一些。
尝试在调用response.success()
之前等待所有save()
调用返回:
// find your picks
picks.find()
// when it finishes
.then(function(results) {
// build an array with a promise for each save call
var savePromises = results.map(function(result) {
return result.save({winningTeam: 3});
});
// and wait for all of them to finish
return Parse.Promise.when(savePromises);
}).then(function() {
// if everything went ok
response.success();
}, function(err) {
// if something bad happened
response.error(err);
});
相关文章:
- AJAX调用运行C代码的最佳实践
- 在经过一段时间或满足条件后运行代码
- 在Firefox restartless插件中,当一个新窗口打开时,我如何运行代码(监听窗口打开)
- 如果调试器关闭,Internet Explorer将出现运行代码问题
- JQuery 帖子未在 PHP 文件中运行代码
- 当ajax请求发生时运行代码的Chrome扩展
- 当我运行代码时,我得到以下结果 []对象对象] [对象对象],但应该给我一个有序数组
- 仅当客户端连接到Meteor服务器时才运行代码
- 在.each()循环中的ajax完成后,Jquery运行代码
- node.js和Cygein,我该如何运行代码
- 未访问全局变量,未运行代码
- Meteor - 在客户端上的异步回调的 for 循环后运行代码
- 运行代码以在Android应用程序中单击javascript按钮?尝试在页面上抓取回复按钮联系信息 craigslist
- 函数结束时如何运行代码
- JS 在不满足条件时在 if 语句中运行代码段
- 在 Ember 视图参数更改上运行代码
- 如何在 YUI 模块中运行代码
- 如何在未在 iframe 中定义的 iFrame 中运行代码
- 在后台运行代码,同时显示警报
- 加载页面时运行代码