使用 Parse Code Cloud Javascript 函数更改 Parse 列的值

Posted

技术标签:

【中文标题】使用 Parse Code Cloud Javascript 函数更改 Parse 列的值【英文标题】:Changing values of Parse column using Parse Code Cloud Javascript function 【发布时间】:2014-09-01 08:31:00 【问题描述】:

所以这是我第一次编写 javascript,所以请多多包涵。我编写这个函数是为了在我的 Parse.com 应用程序中查询一个类,然后在查询后我想将其中一列(布尔类型)设置为 true。

为了进行测试,我设置了一个只有 7 个值的测试类。

问题:7 个中只有 3 个正在更改。每次保存后我必须等待吗?我知道在 Javascript 中等待/休眠是“错误的”,但我似乎找不到解决方案。

提前致谢!

另外,在使用 ios/Parse 时,我想检查布尔值是否在 Objective-C 中未定义,我已经尝试将其与 nil/NULL 进行比较,抛出异常

Parse.Cloud.define("setYears", function(request, response) 
var object = new Parse.Query("testClass");

object.find(
success: function(results)

for (var i = 0; i < results.length; i++) 
    results[i].set("testBool",true);// = true;
    results[i].save(null,

         
            success:function ()
            
                response.success("Updated bool!");
            ,
            error:function (error)
            
                response.error("Failed to save bool. Error=" + error.message);
            

        );

;

response.success();


)
);

【问题讨论】:

解决这个问题非常困难 :) 解析中确实是一团糟。请注意,当您第一次获得“响应”时,它将完成所有事情。您可能想在groups.google.com/forum/#!forum/parse-developers 群中提问... 我感觉事情没那么简单。谢谢你告诉我。 也许你可以帮忙做另一件事,我想检查一下在 Objective-C 中布尔值是否未定义,我已经尝试将它与 nil/NULL 进行比较,抛出异常。你知道其他方法吗? :) 【参考方案1】:

事实证明,如上所述,解决起来并不难。只需要使用 saveAll 而不是自己保存每个对象。如果有人需要,这是正确的解决方案:

Parse.Cloud.define("setYears", function(request, response) 
var object = new Parse.Query("testClass");

object.find(
success: function(results)

for (var i = 0; i < results.length; i++) 
    results[i].set("testBool",true);// = true;  


Parse.Object.saveAll(results,
success: function(list) 
  // All the objects were saved.
  response.success("ok " );  //saveAll is now finished and we can properly exit with confidence :-)
,
error: function(error) 
  // An error occurred while saving one of the objects.
  response.error("failure on saving list ");
,
);


response.success();




  )

);

【讨论】:

以上是关于使用 Parse Code Cloud Javascript 函数更改 Parse 列的值的主要内容,如果未能解决你的问题,请参考以下文章

使用 Parse Cloud Code 从数组中删除对象

将 Parse Cloud Code 与 Parse Server Heroku 一起使用

如何使用 Cloud Code 删除 Parse.com 中的角色

response.error不是Parse Cloud Code中的函数

向用户添加数据,然后使用 Parse Cloud Code 保存它们

如何使用 Parse Cloud Code 更新对象的属性?