下面是要更新或插入的对象,以防该对象不存在:
Users: { email : 'some email' items: [ {id: 'id1', name: 'name'},{id: 'id2', name: 'name'} ] } I wan
t到替换这项目入口如果存在与一个新的或创建一个新的入口在case doese不存在.非常感谢我不知道解决办法
yzuktlbb1#
您可以通过执行以下操作来实现此功能;
let user_id = "123"; let item_name = "item Name"; let count = await Users.countDocuments({ user_id: user_id, "items.name": item_name });
1-如果文档存在,请检查条件,然后更新其值2-否则将对象推入数组
if (count > 0) { await YourSchema.updateOne( { _id: user_id, "item.name": item_name } ); } else { await YourSchema.updateOne( { _id: user_id }, { $push: { items: { name: item_name } } } ); }
1条答案
按热度按时间yzuktlbb1#
您可以通过执行以下操作来实现此功能;
1-如果文档存在,请检查条件,然后更新其值
2-否则将对象推入数组