【发布时间】:2021-07-25 04:59:34
【问题描述】:
您好,我需要一些帮助来更新我的产品集合中的许多文档,它必须匹配updateData.oldCategoryName 和updateData.userId,然后设置所有匹配的产品并使用updateData.newCategoryName 更新类别名称。
let products = [
{id: 1, name: 'Brasilian', category: 'cofee', userId: 9},
{id: 2, name: 'Colombian', category: 'cofee', userId: 9},
{id: 3, name: 'Apple', category: 'fruit', userId: 8},
{id: 4, name: 'Strawberry', category: 'fruit', userId: 8},
{id: 5, name: 'Banana', category: 'fruit', userId: 7}
];
let updateData = {
userId: 8,
oldCategoryName: 'fruit',
newCategoryName: 'good fruit'
};
如何设置条件并使用 mongoose 更新许多文档?提前致谢。
这是我用来更新单个产品的 sn-p:
Product.findByIdAndUpdate(productId, updateData, {new: true}, (err, productUpdated) => {
if(err) return res.status(500).send({message: 'Error al actualizar'});
if(!productUpdated) return res.status(404).send({message: 'No existe el producto'});
return res.status(200).send({product: productUpdated});
});
【问题讨论】:
标签: javascript node.js mongodb mongoose