Node.js 我的查询与mongodb中的查询不同

Node.js 我的查询与mongodb中的查询不同,node.js,mongodb,express,Node.js,Mongodb,Express,我的网址是 我的回答是 [] 这是我的密码 var query = req.param("search"); console.log(query); Event.find({name: /query/}).sort({ created_at: 'desc' }).populate('moderator').exec(function (err, events) { if (err) throw err; var response

我的网址是

我的回答是 []

这是我的密码

var query = req.param("search");
        console.log(query);
        Event.find({name: /query/}).sort({ created_at: 'desc' }).populate('moderator').exec(function (err, events) {
        if (err) throw err;

        var response = [];
        events.forEach(function (ev) {

            var moderatorName = ev.moderator.facebook.name;

            if (ev.isFanPage)
                moderatorName = ev.fanPageName;

            response.push({ eventId: ev._id, title: ev.name, description: ev.description, thumb: ev.thumb, moderator: moderatorName, moderatorFbId: ev.moderator.facebook.id, countPicture: '1', countVideo: '1' });
        });

        next(response);
       });
我的搜索参数是req.param(“search”),并包含在我的查询中查找参数


因为它应该搜索字段?

Event.find({“name”:new RegExp(query)})
{“name”:{“$regex”:query}
。否则它实际上是在寻找“字符串”
“query”
,而不是插入变量。感谢您的解决方案“{”name:new RegEx(query)}”为{”name:new RegExp(query)}工作,因为添加了可选参数“i”?请参阅和文档。我认为还有另一个问题:
if(err)throw err,它应该是
返回错误