pop*_*rob 4 mongoose mongodb node.js mongodb-query
所以我想运行一个猫鼬查询来查找存在所有 searcharray 标签的帖子。
标签的数量各不相同。
目前,这会返回存在任何标签的帖子。
Post.find({
'tags.name': {
$in : searcharray
}
}, function(err, post) {
console.log(post);
}
);
Run Code Online (Sandbox Code Playgroud)
我检查了文档,但无法将其拼凑在一起。
谢谢
您想要$all,这基本上是一个$and具有较短语法的操作,就像具有较短语法的$in操作一样$or:
Post.find({"tags.name": { "$all": searcharray } }, function(err, posts) {
console.log(posts);
});
Run Code Online (Sandbox Code Playgroud)
这要求您的“标签”数组具有与列表中指定的“所有”项目的“名称”匹配的成员searchArray。
作为“或”条件,人们$in只会回忆起至少包含其中一项的任何文档,因此“和”条件意味着所有项目。