解析云代码全部保存
Posted
技术标签:
【中文标题】解析云代码全部保存【英文标题】:Parse Cloud Code Save All 【发布时间】:2015-07-13 05:22:01 【问题描述】:所以我的 Parse Core 中有一个大约 200 行的列表。我正在尝试创建一个贯穿整个列表并将push
的整个列更改为0
的作业。我正在尝试使用此代码:
Parse.Cloud.job("SetPush", function(request, response)
//take in JSON with dict
var newts = new Array();
for ( var i = 0; i < request.params.push.length; i++ )
//add these entries to db
var DataClass = Parse.Object.extend("AllTeams");
var dataupdate = new DataClass();
var origdata = request.params.datalist[i];
dataupdate.set("push", "0");
newts[i]=dataupdate; //add another item to list
Parse.Object.saveAll(newts,
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 ");
,
);
//default body does not do response.success or response.error
);
如您所见,我的班级是SetPush
,我想一直更新push
列。我认为问题在于:
for ( var i = 0; i < request.params.push.length; i++ )
当我在云代码中运行此代码时,它返回此错误:
'TypeError: Cannot read property 'length' of undefined at main.js:43:60'
我做错了什么?谢谢
【问题讨论】:
亲爱的尼古拉斯;我有问题。推送是根据请求提供的列表吗? (你从请求参数调用 push)? @kingspeech 老实说,我不知道推送应该是什么。那就是错了哈哈! 亲爱的 Nicholas;从你的帖子中,我可以收集到这样的信息; post 必须是一种列表,其属性长度必须有效。只需检查您触发云功能的位置,这样您就可以看到您提供给请求的参数。希望这会有所帮助。问候。 【参考方案1】:.length 未定义,因为 request.params.push 是一个对象。看起来您想使用输入参数 request.params.push 遍历您传递给此云函数的列表,如果/假设调用者将有效 JSON 作为“推送”传递,那么您可以执行类似这样的操作
Parse.Cloud.job("SetPush", function(request, response)
//take in JSON with dict
var parsedJson = JSON.parse( request.params.push );
var newts = new Array();
for ( var i = 0; i < parsedJson.length; i++ )
//add these entries to db
var DataClass = Parse.Object.extend("AllTeams");
var dataupdate = new DataClass();
var origdata = request.params.datalist[i];
dataupdate.set("push", "0");
newts[i]=dataupdate; //add another item to list
Parse.Object.saveAll(newts,
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 ");
,
); //default body does not do response.success or response.error
);
【讨论】:
以上是关于解析云代码全部保存的主要内容,如果未能解决你的问题,请参考以下文章