簡體   English   中英

如何使用javascript更新parse.com中的當前對象?

[英]how can i update current object in parse.com with javascript?

我想用javascript更新我在parse.com中已有的對象; 我做的是我首先用查詢退回對象,但我不知道如何更新它。

這是我使用的代碼,它有什么不對嗎?

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);
  }
});

問題和你的答案之間的差異一開始可能並不明顯 - 所以對於發生在這里的每個人 - 使用query.first而不是query.find

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

返回一個對象數組,一個沒有方法“set”或“save”的數組。

query.first() //use this instead

返回一個具有這些方法的骨干樣式對象。

我找到了解決方案,以后有人需要它

這里是:

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);
  }
});

如果有人得到msg“{”代碼“:101,”錯誤“:”找不到更新的對象“}”,請檢查對象的類權限和ACL,以確保允許讀取和寫入

做這樣的事情:

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);
 }
});

你可以這樣做:

 var results= await query.find();
          for (var i = 0; i < results.length; i++) {
          results[i].set("DName", "aaaa");
          results[i].save();
          }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM