【问题标题】:How to get value from a MongoDB document如何从 MongoDB 文档中获取价值
【发布时间】:2011-11-06 21:36:19
【问题描述】:

我正在尝试从 mongodb 文档中获取值,但即使 request 正确,我也没有得到结果:

db.open(function(err, db){
var request = {
          'hash' : req.params['link']
              }

                db.collection('urlmaps', function(error, collection){
                    var result = collection.find(request, {'long_url' : 1 });
                    console.log(JSON.stringify(result));
                    res.send(JSON.stringify(result));   
                }); 
});             

我期待一个字符串类型的var result,我不确定我的查询是否足以从数据库中提取字符串。有什么想法吗?

【问题讨论】:

    标签: javascript mongodb node.js


    【解决方案1】:

    试试这个代码。我认为您使用 find 方法不正确。据我所知,所有 nodejs mongodb 驱动程序都是异步的,并且使用回调来返回值。

    db.open(function(err, db){
        var request = {
          'hash' : req.params['link']
        }
    
        db.collection('urlmaps', function(error, collection){
            collection.find(request, {'long_url' : 1}, function(err, result){
                console.log(JSON.stringify(result));
                res.send(JSON.stringify(result));   
            })
        }); 
    });
    

    【讨论】:

      【解决方案2】:

      我不得不使用collection.findOne(request, function(...)) 而不仅仅是collection.find。这解决了问题。

      【讨论】:

        猜你喜欢
        • 2023-03-09
        • 1970-01-01
        • 2017-03-09
        • 2021-11-13
        • 1970-01-01
        • 2014-11-12
        • 1970-01-01
        • 1970-01-01
        • 2017-01-15
        相关资源
        最近更新 更多