10

parse.comにすでにあるオブジェクトをjavascriptで更新したい。私がしたことは、最初にクエリでオブジェクトを廃止しましたが、それを更新する方法がわかりません。

これが私が使用するコードです、何が問題なのですか?

var GameScore = Parse.Object.extend("Driver");
var query = new Parse.Query(GameScore);
query.equalTo("DriverID", "9");
query.find({
  success: function(results) {

    alert("Successfully retrieved " + results.length + "DName");

     results.set("DName", "aaaa");
    results.save();
  },
  error: function(error) {
    alert("Error: " + error.code + " " + error.message);
  }
});
4

5 に答える 5

22

質問とあなたの答えの違いは、最初は明らかではないかもしれません.

query.find()  //don't use this if you are going to try and update an object

メソッド「set」または「save」を持たないオブジェクトの配列を返します。

query.first() //use this instead

これらのメソッドを利用できる単一のバックボーン スタイル オブジェクトを返します。

于 2013-05-22T17:13:40.127 に答える
16

誰かが後でそれを必要とする場合に備えて、解決策を見つけました

ここにあります:

var GameScore = Parse.Object.extend("Driver");
var query = new Parse.Query(GameScore);
query.equalTo("DriverID", "9");
query.first({
  success: function(object) {

     object.set("DName", "aaaa");
    object.save();


  },
  error: function(error) {
    alert("Error: " + error.code + " " + error.message);
  }
});
于 2012-11-06T13:29:14.620 に答える
0

次のようにします。

var GameScore = Parse.Object.extend("Driver");
var query = new Parse.Query(GameScore);
query.equalTo("DriverID", "9");
query.find({
  success: function(results) {

   alert("Successfully retrieved " + results.length + "DName");
      // - use this-----------------
      results.forEach((result) => {
        result.set("DName", "aaaa");
      });
      Parse.Object.saveAll(results);
      // --------------------------------
 },
 error: function(error) {
   alert("Error: " + error.code + " " + error.message);
 }
});
于 2018-10-29T20:46:54.407 に答える