[英]Mongoose - findOneAndUpdate dynamically $push into array
[英]Mongoose findOneAndUpdate on array of subdocuments
我正在尝试用该数组的新副本替换子文档数组。
就像是...
var products = productUrlsData; //new array of documents
var srid = the_correct_id;
StoreRequest.findOneAndUpdate({_id: srid}, {$set: {products: products}}, {returnNewDocument : true}).then(function(sr) {
return res.json({ sr: sr}); //is not modified
}).catch(function(err) {
return res.json({err: err});
})
产品var具有正确的修改,但是返回的对象以及db中的文档均未修改。 这不是替换子文档数组的字段的正确方法吗? 如果没有,那是什么?
我参加聚会有点晚了,而且我真的很着急-但应该是:
StoreRequest.updateOne(
{ _id: srid },
{ $set: { 'products.$': products }},
{ new: true });
我无法使其与findOneAndUpdate
一起findOneAndUpdate
但以上方法确实可以工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.