簡體   English   中英

如何訪問mongodb collection.find方法返回的Expressjs中的特定字段?

[英]How to access a specific field in Expressjs returned by mongodb collection.find method?

我正在嘗試訪問從mongodb collection.find方法返回的一個字段,我無法做到這一點,並且console.log上沒有任何顯示

router.get('/buildings', function(req, res, next) {
var db = req.db;
var collection = db.get('buildings');

collection.find({buildingNO:"1"},{},function(e,docs){
     var x=docs[0].price;
     console.log(x);
    });
});

注意:我使用的是和尚中間件,而不是本機的mongodb

謝謝

檢查回調中的錯誤參數,您的返回參數為:

x=docs[0]...

並不是:

x=doc[0]

我很驚訝您沒有得到未定義的變量錯誤。

您可以在nodejs中使用功能 projection

投影是您傳遞空{}的第二個對象,因此將投影所有屬性。

例如 :

如果投影一個對象,例如:

{
_id:false// or 0
}

將省略_id屬性。

在這里,我們將傳遞price

collection.find({buildingNO:"1"},{price:1},function(e,docs){
     var x=docs[0].price;
     console.log(x);
    });

您在doc [0]上有錯字應該是docs

http://docs.mongodb.org/manual/reference/method/db.collection.find/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM