This question already has answers here:
how do i add a value to the top of an array in mongodb?
(2个答案)
5年前关闭。
什么是通过
我尝试了这不会给出错误,但似乎也没有更新值
Docs say to use
(2个答案)
5年前关闭。
什么是通过
unshift
将值findByIdAndUpdate
导入Mongoose文档数组的正确方法?我尝试了这不会给出错误,但似乎也没有更新值
Schema.findById(id, function(err, doc){
console.log(doc.array.length); // => 1
Schema.findByIdAndUpdate(id,
{ array: { unshift: { property: 'value' } } },
{ upsert: true },
function(err, doc) {
console.log(doc.array.length); // Also => 1
}
);
});
$push
有效。 $unshift
给出错误[MongoError: exception: Unknown modifier: $unshift
Docs say to use
unshift
instead,但不起作用。还是我使用错了?它不会给出任何错误,只是不会更新数组。 最佳答案
Found out,$position
运算符与$each
结合使用,与$push
一起实现相同的目的。
{ array: { $push: { property: {$each: ['value'], $position: 0 } } } },
关于node.js - Mongoose 不动findAndUpdateById ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28360526/
10-09 08:23