我尝试更新 Parse.com Core 中的值,但它根本不起作用。 我有我想要更新的项目的“objectID”
Parse.initialize("xxxx", "xxxx");
var PP = Parse.Object.extend("PP");
var PP = new PP();
var query = new Parse.Query(PP);
query.equalTo("objectId", "3Enwfu0QPQ");
query.first({
success: function (PP) {
PP.save(null, {
success: function (PP) {
PP.set("free", "100");
PP.save();
}
});
}
});
我想将对象“3Enwfu0QpQ”的“free”值设置为100,但不起作用。
最佳答案
您的代码存在几个问题:
1.
var PP = Parse.Object.extend("PP");
var PP = new PP();
根据您的屏幕截图,该类名为“P”,而不是“PP”。您还重写了 PP 对象。
2.
var query = new Parse.Query(PP);
query.equalTo("objectId", "3Enwfu0QPQ");
query.first({[...]});
query
无效,因为 PP 不再是 PP 对象。您还应该使用 query.get而不是 equalTo
。
3.
PP.save(null, {
success: function (PP) {
PP.set("free", "100");
PP.save();
}
});
您正在保存一个空对象,然后编辑同一对象,然后再次更新它。
您的代码应如下所示(未经测试)。
Parse.initialize("xxxx", "xxxx");
var P = Parse.Object.extend("P");
var query = new Parse.Query(P);
query.get('3Enwfu0QPQ', { // we get the object
success: function (instance) {
instance.set("free", "100"); // We update the returned object
instance.save(); // we save it
}
});
您还可以通过以下方式保存请求:
Parse.initialize("xxxx", "xxxx");
var P = Parse.Object.extend("P");
var instance = new P();
instance.id = '3Enwfu0QPQ';
instance.set("free", "100");
instance.save();
关于javascript - Parse.com Javascript 通过 objectID 更新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35009994/