Mongodb 获取按填充值mongoose筛选的对象

Mongodb 获取按填充值mongoose筛选的对象,mongodb,mongoose,Mongodb,Mongoose,我想得到所有聊天的名字或姓氏等于搜索正则表达式值 我试过这个: Chat.find({ users: req.params.id }) .populate({ path: "users", select: "name surname avatar online", match: { $or: [ { name: { $i

我想得到所有聊天的名字或姓氏等于搜索正则表达式值

我试过这个:

 Chat.find({
        users: req.params.id
    })
        .populate({
            path: "users", select: "name surname avatar online", match: {
                $or: [
                    { name: { $in: regex } },
                    { surname: { $in: regex } }
                ]
            }
        })
但它不适用于我在文档中看到的太晚的内容:
匹配选项不会过滤掉故事文档。如果没有满足匹配要求的文档,您将得到一个包含空fans数组的故事文档。


但我不知道如何解决这个问题。。。您有什么想法吗?

共享模式或示例文档