我有一个Parse Cloud Code功能,可以作为我的后台工作。现在我正处于调试阶段。该函数不会抛出错误,也不会执行它应该执行的操作。标题为“backgroundJob”的函数应该遍历已创建的所有“Group”对象。每个“Group”对象都有一个“Event”对象数组,所有你必须知道的“Event”对象是它有一个名为“date”的日期属性。
该函数应该遍历每个组对象的所有事件,如果事件的日期与当前时间相同,则该函数应该向所有“用户”发送通知,该用户除了该组,然后删除该事件。现在,该功能 如果与当前时间同时没有删除该事件,并且没有通知该组的成员 。
我的功能如下。
Parse.Cloud.define("backgroundJob", function(request, response) {
Parse.Cloud.useMasterKey();
var moments = require("cloud/moment.js");
moments().format();
var _ = require('cloud/underscore.js');
// Get the actual time, for use in non testing
// var now = moments();
// For testing edit time in ()
var now = moments("2015-23-11 19:30", "YYYY-MM-DD HH:mm");
var out = now;
console.log(out);
var groupObject = Parse.Object.extend("Group");
var query = new Parse.Query(groupObject);
var eventObject = Parse.Object.extend("Event");
query.find().then(function(groups) {
var promise = Parse.Promise.as();
var groupArray = groups;
for (var i = 0; i < groupArray.length; i++) {
promise = promise.then(function() {
var count = 0;
var eventArray = groupArray[i].get("Events");
for (count = 0; count < eventArray.length; count++) {
if (now == eventArray[count].get('date')) {
var curEvent = eventArray[count];
eventArray[count].destory();
var relationc = result.get("created");
var createdq = relationc.query();
var relationj = result.get("created");
var joinedq = relationj.query();
var partOnee = curEvent.get("name");
var outString = partOnee.concat(" is now");
Parse.Push.send({
where : createdq,
data : {
alert : outString
}
}).then(function() {
response.success();
}, function(error) {
response.error(error);
});
Parse.Push.send({
where : joinedq,
data : {
alert : outString
}
}).then(function() {
response.success();
}, function(error) {
response.error(error);
});
var e = eventArray[count];
var destroyp = Parse.Promise.as();
destroyp = promise.then(function() {
return e.destroy();
}, function(error) {
response.error(error);
});
}
}
});
}
}).then(function() {
response.success()
}, function(error) {
response.error(error);
});
});
谢谢。
作为代码中的参考,有两个单独的关系给用户“创建”和“加入”,这就是为什么在代码中我有一个创建的查询和反应查询。
答案 0 :(得分:0)
您的代码中有拼写错误。也许这不是问题的原因,但无论如何,检查一下。
eventArray[count].destory();
看起来很傻,但是,谁知道......