我在mongojs
中使用nodejs
来访问mongodb
。
我正在尝试根据“SOLUTION_TEST Number”找到记录作为where条件。
db.stories.find({"SOLUTION_TEST Feature" : req.query.data},function(e,docs){
console.log(docs);
if(docs[0]){
res.end(docs[0]);
}
else{
res.end();
}
});
根据mongojs
,我必须将字符串传递给where子句。我传递的req.query.data是字符串。但我想要传递一个number
,因为该类型是一个数字。
从shell我能够成功拨打电话。
如何将值作为数字传递,以便mongodb理解?
故事DB中的条目:
答案 0 :(得分:1)
您只需要将req.query.data
解析为一个数字;您可以使用parseInt
。但您还需要将docs[0]
转换为字符串,然后再将其传递给res.end
:
db.stories.find({"SOLUTION_TEST Feature" : parseInt(req.query.data, 10)},function(e,docs){
console.log(docs);
if(docs[0]){
res.end(JSON.stringify(docs[0]));
}
else{
res.end();
}
});