2

Javascriptを書くのは初めてなので、ご容赦ください。Parse.com アプリケーションでクラスをクエリするためにこの関数を作成し、クエリを実行した後、(ブール型の) 列の 1 つを true に設定したいと考えています。

テストするために、値が 7 つだけのテスト クラスを設定しました。

問題: 7 つのうち 3 つだけが変更されています。保存するたびに待つ必要がありますか? Javascript での待機/スリープが「間違っている」ことはわかっていますが、解決策が見つからないようです。

前もって感謝します!

さらに、iOS/Parse を使用する場合、Objective-C でブール値が定義されていないかどうかを確認したいのですが、既に nil/NULL と比較しようとしましたが、例外がスローされました

Parse.Cloud.define("setYears", function(request, response) {
var object = new Parse.Query("testClass");

object.find({
success: function(results)
{
for (var i = 0; i < results.length; i++) {
    results[i].set("testBool",true);// = true;
    results[i].save(null,

         {
            success:function ()
            {
                response.success("Updated bool!");
            },
            error:function (error)
            {
                response.error("Failed to save bool. Error=" + error.message);
            }

        });

};

response.success();

}
})
});
4

1 に答える 1

3

上記のように解決するのはそれほど難しくないことが判明しました。各オブジェクトを単独で保存する代わりに、saveAll を使用する必要がありました。誰かがそれを必要とする場合の正しい解決策は次のとおりです。

Parse.Cloud.define("setYears", function(request, response) {
var object = new Parse.Query("testClass");

object.find({
success: function(results)
{
for (var i = 0; i < results.length; i++) {
    results[i].set("testBool",true);// = true;  
}

Parse.Object.saveAll(results,{
success: function(list) {
  // All the objects were saved.
  response.success("ok " );  //saveAll is now finished and we can properly exit with confidence :-)
},
error: function(error) {
  // An error occurred while saving one of the objects.
  response.error("failure on saving list ");
},
});


response.success();

}


  })

});
于 2014-09-02T12:09:51.267 に答える