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

17,805

Solution 1

I found the solution, incase someone needs it later

here it is:

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

Solution 2

The difference between the question and your answer may not be obvious at first- So for everyone who has happened here- Use query.first instead of query.find.

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

returns an array of objects, an array which has no method "set" or "save".

query.first() //use this instead

returns a single backbone style object which has those methods available.

Solution 3

If someone got msg "{"code":101,"error":"object not found for update"}", check the class permission and ACL of Object to enrure it's allowed to read and write

Share:
17,805
AzabAF
Author by

AzabAF

Senior iOS Developer

Updated on June 15, 2022

Comments

  • AzabAF
    AzabAF almost 2 years

    I want to update object i already have in parse.com with javascript; what i did is i retirevied the object first with query but i dont know how to update it.

    here is the code i use, whats wrong on it?

    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);
      }
    });
    
  • Hairgami_Master
    Hairgami_Master almost 11 years
    The difference between the question and your answer may not be obvious at first- So for everyone who has happened here- Use query.first instead of query.find. Find returns an array of objects, and the array has no method "set" or "save". First returns a single backbone style object which has those methods available.
  • gauti
    gauti over 9 years
    how can i do both save or update in one function. Set is for only update the rows. If row is not exist how to save inside the find function
  • ManoharSingh
    ManoharSingh over 9 years
    I'm able to retrive my values using objectId , but on success i try to set a new value , but always i get "{"code":101,"error":"object not found for update"}" error , please help me . Thanks In advance :)