使用mongojs使用nodejs中的数字搜索monodb

时间:2014-02-01 17:42:10

标签: node.js mongodb mongojs

我在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中的条目: enter image description here

1 个答案:

答案 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();
    }    
});