gpt4 book ai didi

node.js - $addToSet 并返回所有添加的新项目?

转载 作者:太空宇宙 更新时间:2023-11-04 02:35:04 26 4
gpt4 key购买 nike

是否可以$addToSet并确定哪些项目已添加到集合中?

$addToSet 标记到帖子并返回实际添加的内容

最佳答案

事实并非如此,而且没有任何一句话。您可以获得的最接近的是 findAndModify()方法,并将原始文档表单与您在 $addToSet 中提交的字段进行比较声明:

因此考虑初始文档:

{
"fields": [ "B", "C" ]
}

然后处理这段代码:

var setInfo = [ "A", "B" ];

var matched = [];

var doc = db.collection.findAndModify(
{ "_id": "myid" },
{
"$addToSet": { "fields": { "$each": setInfo } }
}
);

doc.fields.forEach(function(field) {
if ( setInfo.indexOf(field) != -1 ) {
matched.push(field);
}
});

return matched;

因此,这是方法的基本 JavaScript 抽象,实际上不是 native Node 驱动程序或 Mongoose 语法的 nodejs 通用语法,但它确实描述了基本前提。

因此,只要您使用返回文档修改之前的“原始”状态的“默认”实现方法,您就可以像代码示例中所示那样玩“找茬”游戏。

但是在一般的“更新”操作上执行此操作是不可能的,因为它们被设计为可能影响一个或多个对象并且从不返回此详细信息。

关于node.js - $addToSet 并返回所有添加的新项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23128531/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com