如何将索引数组转换为Mongoose文档?

时间:2016-05-17 22:20:46

标签: node.js mongodb mongoose

我有一个索引文档标识符数组(在本例中为字符串),我需要获取每个文件标识符。

var emails = ["jane@gmail.com", "bob@gmail.com", "george@gmail.com"]

对于每封电子邮件,我需要查找后续的“用户”文档。

我想到了两种方法:

1)我可以只有一个返回查找承诺的函数,然后在后续数组上执行Promise.all。

2)我可以创建一个巨大的$或查询。

总的来说,我觉得这可能是一种常见现象,而且这两种解决方案都可能不是最理想的,或者至少是一种不好的做法。

提示?

1 个答案:

答案 0 :(得分:1)

你看过$ in?

https://docs.mongodb.com/manual/reference/operator/query/in/

User.find({ email: { $in : emails } })

电子邮件是模型中的属性,电子邮件是您正在搜索的电子邮件数组。