正如我前面的许多人一样,我试图运行一些云代码来检查唯一性,然后根据需要插入或更新对象。
代码正确地确定数据库中是否存在与request.object具有相同设备令牌的现有对象
但是,现有对象不会将它的countdownValue更新为200。 我试过添加和省略object.save()函数 我尝试添加,省略和交换response.error和response.success函数
在所有情况下,预先存在的物体都保持不变。
我尝试了Updating existing Parse object in Cloud Code和其他许多人。
非常感谢任何帮助或想法。
var Countdown = Parse.Object.extend("Countdown");
Parse.Cloud.beforeSave("Countdown", function(request, response) {
if (!request.object.get("devicetoken")) {
response.error('A Countdown must have a devicetoken.');
} else {
var query = new Parse.Query(Countdown);
query.equalTo("devicetoken", request.object.get("devicetoken"));
query.first({
success: function(object) {
if (object) {
object.set("countdownValue", "200");
object.save();
response.error("Failing on purpose");
}
else
{
response.success();
}
},
error: function(error) {
response.error("Could not validate uniqueness for this Countdown object.");
}
});
}
});