如何 return 具有包含给定字符串的字段的所有文档

How to return all documents that have a field that contains a given string

我有一个问题,我正在创建一个 React 应用程序,使用 Node 和 MongoDB 作为 back-end,我正在尝试从 collection 获取所有文档, 有一个包含给定字符串的字段。 这就是我的尝试方式,当我将参数留空时,它会 return 所有电影,但是当我在“/”之后输入内容时,它会给我一个错误 在我的例子中,我试图获取所有标题包含一些字母的电影来实现搜索组件

router.get("/:query", async (req, res) => {
    let listTemp = [];
    listTemp = await Movie.find({$contains:{"title": {$regex : req.params.query}}});
    try {
        ids = []
        listTemp.forEach(elem => {
          ids.push(elem._id);
        })
        res.status(200).json(ids);
    } catch (err) {
        res.status(500).json(err);
    }
}
);

你可以试试这个

Movie.find({title: { $regex: '.*' + req.params.query + '.*' } });