我有一个像这样的MongoDB ID数组:
it('.post should work with data', function (done) {
var app = express();
app.use(bodyParser());
app.post('/', function(req, res){
res.send(req.body.name);
});
request(app)
.post('/')
.send({ name: 'tobi' })
.expect('tobi', done);
})
我需要从数据库中推入与网络阵列的每个条目匹配的所有文档(完整对象)。
所以我想要一个新的,比如让peopleNetworks像这样:
networks = ["5e1cfabb61e9314617fe2db5", "5e1cfbbbe519704860d9a720", "5e1cfbdd4ab5514888b4c6eb"]
我试图使用以下网络数组过滤我的收藏集:
`peopleNetworks = [
{
"_id": "5e1cfabb61e9314617fe2db5",
"name": "Facebook",
"createdAt": "2020-01-13T23:18:19.593Z",
"updatedAt": "2020-01-13T23:18:19.593Z",
"__v": 0
},
{
"_id": "5e1cfbbbe519704860d9a720",
"name": "Instagram",
"createdAt": "2020-01-13T23:22:35.057Z",
"updatedAt": "2020-01-13T23:22:35.057Z",
"__v": 0
},
{
"_id": "5e1cfbdd4ab5514888b4c6eb",
"name": "Vero",
"createdAt": "2020-01-13T23:23:09.501Z",
"updatedAt": "2020-01-14T00:00:05.458Z",
"__v": 0
}
]`
但这不起作用。
我认为执行此操作的正确方法是在.find()之后链接过滤器,但尝试时搞砸了。
答案 0 :(得分:0)
您可以将mongodb的$ in运算符与find一起使用
const storedNetworks = await Network.find({"_id":{"$in":networks}});
答案 1 :(得分:0)