Skip to content

Instantly share code, notes, and snippets.

@jeffhuangtw
Created July 30, 2015 02:38
Show Gist options
  • Save jeffhuangtw/b155418758a70a678a11 to your computer and use it in GitHub Desktop.
Save jeffhuangtw/b155418758a70a678a11 to your computer and use it in GitHub Desktop.
parse duplicate save bug sample code
Parse.Cloud.define("testSave", function(request, response) {
var id = request.params.class1Id;
var query = new Parse.Query('Class1');
query.include('Class2Pointer');
query.get(id).then(function (Class1) {
var Class2 = Class1.get('Class2Pointer');
Class2.set('text', 'snoopy');
// test 1: this will have duplicate save two times
Class2.set('Class1Pointer', Class1);
// test 2: this will save once
/*
var CLASS1 = Parse.Object.extend("Class1");
var class1Pointer = CLASS1.createWithoutData(Class1.id);
Class2.set('Class1Pointer', class1Pointer);
*/
// test 3: this will save once
/*
var class1Pointer = new Parse.Object("Class1");
class1Pointer.id = Class1.id;
Class2.set('Class1Pointer', class1Pointer);
*/
return Class2.save();
}).then(function (Class2) {
return response.success();
}, function (error) {
return response.error();
});
});
Parse.Cloud.beforeSave("Class1", function(request, response) {
console.log("====>Class1 saved!");
return response.success();
});
Parse.Cloud.beforeSave("Class2", function(request, response) {
console.log("====>Class2 saved!");
return response.success();
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment