将嵌套对象添加到mongo数组字段不起作用

时间:2016-01-20 04:54:28

标签: javascript arrays mongodb push

我试图将纬度/经度点添加到mongo数组字段中,以获得具有点数组作为字段的对象。这是创建{lat:,lng:}对象的嵌套字段的代码。但是,这似乎没有正确设置Kid的points属性。 returnedPoints数组的格式为

[{ lng: '2', lat: '0' },
{ lng: '2', lat: '0' },
{ lng: '2', lat: '0' },
{ lng: '2', lat: '0' },
{ lng: '2', lat: '0' } ]
        var returnedPoints = [];
        for (p in pf.particles) {
            returnedPoints.push({"lng" : p[0], "lat": p[1]});

        }

        var newPoints = 
        {   
            "kidID": id,
            "center": {"lng": kid.center.lng, "lat": kid.center.lat},
            "destination": {"lng": dest[0], "lat": dest[1]},
            "points": returnedPoints,
            "gpsPoints" : pf.GPSPoints(),
            "time": clock_time
        };
        kidMaker.pushKid(
            newPoints,
            function(err, kids) {
                if (err) {
                    res.send(err);
                }
            }
        );

将对象插入数组的代码看起来很标准,在这里:



childMaker.prototype.pushKid = function(kid, callback) {
	Kid.update({ "kidID" : kid.kidID },
		kid,
		{ upsert : true },
		function(err, doc) {
			console.log(err);
			if (!err) {
				callback(null, doc);
			}
		}
	);
}




我怎样才能一次将超过20000个lat / lng点设置到Mongo数据库中?

0 个答案:

没有答案