2016-05-23 17 views
0

ノードJS、Express、MongoDBを使用してサンプルアプリケーションを開発中で、NodeJSからMongoDBにアクセスするには、nodejs用のネイティブmongodbドライバを使用してください。 以下は私に問題を与えているコードの一部です。NodeJS/MongoDBコードの循環参照エラー

module.exports.getLookups = wrap(function * (req , res) { 
let users = yield getUsers(); 
db.close(); 
res.setHeader('Content-Type', 'application/json'); 
res.send(JSON.stringify(users)); 
}); 

// get users from MEAN mongoDB 
function * getUsers(){ 
return db.collection("users").find({}); 
} 

"res.send(JSON.stringify(users));" jsonデータを返すのではなく、循環参照エラーを投げています。 "users"コレクションはレコードが少ない単純なコレクションです。より多くの情報を提供する必要がある場合はお知らせください。

答えて

2

collection.find()は、a Cursorを返します。あなたはそのカーソルからすべての結果を読みたい場合は、それに.toArray()を呼び出す必要があります。

function getUsers(){ 
return db.collection("users").find({}).toArray(); 
} 

getUsers()はジェネレータ関数である必要はありません)

+0

はい、あなたは正しい、getUsersは必要はありませんジェネレータである。 – refactor