繁体   English   中英

parse.com中的云代码不适用于所有数据

[英]cloud code in parse.com doesn't work to all data

我刚刚开始学习如何在Parse.com中修改数据库。 我在Mac中使用cloud code

在我的数据库中,我获得了大约150个数据,分别包含openhourclosehour类。 不幸的是,它是用string编写的。 它的结构是这样的12:30

我想将其全部从string转换为number ,并将其存储在类openHourcloseHour 例如,我将12:30更改为string ,将12.5更改为number

我已经编写了此代码,进行了部署,并使用Mac中的终端执行了该代码。 似乎成功了,因为我可以在类openHourcloseHour中看到自己的一些数据。

我的问题是,有几个数据仍然为空。 有人可以告诉我为什么会这样吗? 我错过了什么?

var _ = require('underscore.js');
Parse.Cloud.define("openclose", function(request, response) {
               Parse.Cloud.useMasterKey();
               var query = new Parse.Query("Places");
               query.limit = 1000;
               query.find().then(function(results) {
                                 _.each(results, function(result) {
                                        var openString = result.get("openhour");
                                        var openHourString = openString.slice(0,2);
                                        var openHour = Number(openHourString);

                                        var openMinuteString = openString.slice(3);
                                        var openMinute = Number(openMinuteString);

                                        result.set("openHour", openMinute/60 + openHour);

                                        var closeString = result.get("closehour");
                                        var closeHourString = closeString.slice(0,2);
                                        var closeHour = Number(closeHourString);

                                        var closeMinuteString = closeString.slice(3);
                                        var closeMinute = Number(closeMinuteString);

                                        result.set("closeHour", closeMinute/60 + closeHour);
                                        });
                                 return Parse.Object.saveAll(results);
                                 }).then(function(results) {
                                         response.success(results);
                                         }, function(error) {
                                         response.error(error);
                                         });
               });

尝试在query.find()之前添加“返回”

return query.find().then(function(results) {

另外-我假设您有<1,000行的数据? 否则,由于最大查询限制,您将需要进行递归操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM