2017-01-17 5 views
0

結果の配列を検索するには、次の作業が必要です。ノード内でMongoの最初の結果を見つける方法

collection.find({name:query}).toArray(function (err,result) { 
     if(err) 
      sendError(db,err,request,response); 
     else 
      displayResults(db,result,request,response); 
    }); 

ただし、最初の結果を簡単に検索したいと思います。

+1

'find'の代わりに' findOne'を使用しますか? – Jorg

+0

これをプラグインするだけで、toArray操作に関するエラーがスローされますが、これを修正する方法についてのヒントはありますか? – COMisHARD

+0

[documentation](https://mongodb.github.io/node-mongodb-native/markdown-docs/queries.html)または出力自体を見てください。配列を返さず、単一のオブジェクトだけを返します。つまり、 'toArray'は必要ありません。 – Jorg

答えて

0

あなたはfindOne()を使用することができます。

collection.findOne({name:query}, function (err,result) { 
    if(err) 
     sendError(db,err,request,response); 
    else 
     displayResults(db,result,request,response); 
}); 

それともあなたが得る配列の最初の要素を取る:

collection.find({name:query}).toArray(function (err,result) { 
    if(err) 
     sendError(db,err,request,response); 
    else 
     displayResults(db,result[0],request,response); 
}); 

findOne() 1つだけの結果(もしあれば)を持つオブジェクトを返すことに注意してください配列ではありません。どちらの場合も、結果を確認することは良い考えです。

関連する問題