gpt4 book ai didi

javascript - 如何使用 Monk 在 Javascript 的 forEach 循环中更新文档?

转载 作者:行者123 更新时间:2023-11-30 17:12:56 26 4
gpt4 key购买 nike

首先是我文档的结构:

{
"_id": "541a8bea74123744b371d38e",
"geometry": {
"type": "Point",
"coordinates": [
5.3435,
51.69554
]
},
"type": "Feature",
"properties": {
}
}

问题是我想在 forEach 循环中使用更新函数添加一个字段。循环有效,我可以遍历集合中的每个文档,但更新函数什么都不做。这是我的:

var counter = 0;
collection.find({}, {
stream: true
})
.each(function(doc) {
counter++;
var hash = geohash.encode(doc.geometry.coordinates[1], doc.geometry.coordinates[0], precision = 9);
console.log("id: " + doc._id + " hash: " + hash + " counter= " + counter);
collection.update({
_id: doc._id
}, {
$set: {
"properties.geohash.precision9": hash
}
},
function(err) {
if (err) console.log(err);
}
);
})
.error(function(err) {
// handle error
console.log(err);
})
.success(function(doc) {
// final callback
console.log("added geohash");
res.send({
objects: doc
});
});

我哪里错了?

最佳答案

MongoDb shell 中的工作代码

db.collection.find().forEach(function(item)
{
var hash = ....;
item.properties.geohash.precision9 = hash;
db.collection.save(item);
})

我相信只要做一些小的改动,你就可以和 monk 一起使用它

关于javascript - 如何使用 Monk 在 Javascript 的 forEach 循环中更新文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26633486/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com