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代码>,它应该是返回错误
。