我使用2个条件,关键字和用户ID查询数据库,两者都在控制台日志中正确返回但没有返回,不返回null,或者只返回空白。语法有问题吗?
app.get("/api/client?", function (req, res) {
console.log("Search > " + JSON.stringify(req.query));
//Search > {"keyword":"emily","filterby":"5a25f3d1d4b3e30792dd53ca"}
var keyword = req.query.keyword;
var user_id = req.query.id;
Client.find({
$and: [{
"firstname": new RegExp('^' + keyword + '$', "i")
},
{
userid: user_id
}
]
}, (err, result) => {
if (err) {
console.log(err);
}
res.status(200).json(result);
console.log("Result is... " + result)
//Result is
});
});
或者,我尝试了没有查询,只是根据用户ID搜索所有并且它工作,它返回db中的所有记录
app.get("/client", function (req, res) {
var user_id = req.query.id;
Client.find({
userid: user_id
}, (err, result) => {
if (err) {
console.log(err);
}
res.status(200).json(result);
});
});
答案 0 :(得分:0)
找到解决方案! Noob错误,我被赶上了搜索所有工作,var user_id = req.query.id,但实际上当我传入“filterby”时,基于
valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --dsymutil=yes --log-file="log.txt" ./pony_gpExe.
所以它应该是
console.log {"keyword":"emily","filterby":"5a25f3d1d4b3e30792dd53ca"}