我想更新具有相同ID的字段,但不修改字段。我在mongo shell中使用了update,它只更新了一个id但在我的应用程序中我总是得到:
{n:1,nModified:0,ok:1}
如何为相同的ID更新字段markedasread:false to markedasread:true?
setMessageAsRead:(req, res) =>{
const _self = this;
const profileId = req.body._profileId;
Messages.aggregate([
{$match: {
$and: [
{'markedasread': false},
{'receiver_id': ObjectId(profileId)}
]
}
}
], function(err, unreadData){
unreadData.forEach((dat)=>{
Messages.update({ 'receiver_id': ObjectId(dat.receier_id) }, { $set:{'markedasread': true}}).lean().exec(function(err, data){
console.log(data)
});
})
});
我的收藏邮件
[ { _id: 59aede53a468ce4b93c14e8c,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T17:26:43.234Z,
message: 'ddd\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aede58a468ce4b93c14e8f,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T17:26:48.099Z,
message: 'ddd\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aede66a468ce4b93c14e92,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T17:27:02.541Z,
message: 'dudum',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aedf36a468ce4b93c14eb1,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T17:30:30.417Z,
message: 'testali\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aee07ea468ce4b93c14ed3,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T17:35:58.712Z,
message: 'dd\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aee9fba468ce4b93c14ef3,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T18:16:27.709Z,
message: 'j\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aeea07a468ce4b93c14ef9,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T18:16:39.741Z,
message: 'hey na\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aeea15a468ce4b93c14eff,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T18:16:53.664Z,
message: 'ddd\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59aeea8ea468ce4b93c14f05,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T18:18:54.562Z,
message: 'aa\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59af03e6a468ce4b93c14f27,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-05T20:07:02.865Z,
message: 'dd\n',
sender_id: 59a1a21595788a33696d6e93,
sender_name: 'dudu',
markedasread: false,
__v: 0 },
{ _id: 59b1c467dccab373056dc3af,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-07T22:12:55.908Z,
message: 'dd\n',
sender_id: 59ad9494d8fe3c3a15605655,
sender_name: 'Gk',
markedasread: false,
__v: 0 },
{ _id: 59b30dc7ddf29f85d8f637fe,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-08T21:38:15.092Z,
message: 'ddda\n',
sender_id: 59299af157b81e418faf344b,
sender_name: 'adff',
markedasread: false,
__v: 0 },
{ _id: 59b315347708b38677457ce2,
receiver_id: 59ad9494d8fe3c3a15605655,
created_at: 2017-09-08T22:09:56.284Z,
message: 'ddd',
sender_id: 59ad9494d8fe3c3a15605655,
sender_name: 'Gk',
markedasread: false,
__v: 0 } ]