我正在尝试更新async.eachSeries
内的文档。但它没有更新,我没有收到任何错误。请参阅下面的代码。
我想更新最早的文档,即该文档中的字段LastDatePresent
,并且两个文档中都存在newest
日期。所以我有两个基于UrlLink
的重复文档,我想基于_id
更新最旧的文档,并在两个文档中使用最新日期。示例文档:
{
"_id": "older id",
"Date": ISODate("2017-08-25T00:00:00.000Z"),
"UrlLink": "www.myurl.com"
"LastDatePresent": ISODate("2017-08-30T00:00:00.000Z") //Should be updated to "LastDatePresent": ISODate("2017-08-31T00:00:00.000Z")
}
{
"_id": "newer id",
"Date": ISODate("2017-08-25T00:00:00.000Z"),
"UrlLink": "www.myurl.com"
"LastDatePresent": ISODate("2017-08-31T00:00:00.000Z")
}
感谢任何建议:
async.eachSeries(aggres, function(member, callback2) {
myTable.find({
"UrlLink": member.UrlLink,
"Date": member.Date,
}, {
_id: 1,
UrlLink: 1,
Date: 1,
LastDatePresent: 1
}, {
sort: {
'_id': 1
}
}, function(err, post) {
var latestdate = post[0].LastDatePresent > post[1].LastDatePresent ? post[0].LastDatePresent : post[1].LastDatePresent;
myTable.update({
"UrlLink": post[0].UrlLink,
"Date": post[0].Date
}, {
$set: {
LastDatePresent: latestdate //NOT UPDATING HERE!
}
},
function(err, result) {
console.log("saving DATA");
callback2();
});
});
}, function(err) {
console.log("DONE");
});