在mondoDb中打印查询的结果

我在MongoDb中有以下select查询。 我想要控制台logging查询的返回。

student.findCourses = (fcallback) => { global.db.collection('students').find(({}, { "courses.courseName": true, _id: false }).toArray, (err, result) => { if (err) { var jError = { "status": "error", "message": "ERROR -> student.js -> 001" } console.log(jError) return fcallback(true, jError) } var jOk = { "status": "ok", "message": "student.js -> found -> 000" } var jResult = ???? console.log(jOk) return fcallback(false, jOk) }) } 

简单地说,我想在console.log中看到以下内容。 而不是通过手动定义它。 我希望它直接来自数据库。

有没有办法做到这一点?

  { "courses": [ { "courseName": "Web-development" }, { "courseName": "Databases" }, { "courseName": "Databases" } ] } 

你的callback越来越errresult ,所以在成功的情况下,结果集应填充result

只要做console.log(JSON.stringify(result);你现在打印的是jok

还有一件事我看到你的代码并不理想 – 你将结果返回给callback的方式并不是通常的做法。
通常的做法是首先传递错误,其次是结果,如果成功,错误应该是空(或错误)。
所以按照这个惯例,你可以通过错误的情况下:

 return fcallback(err); 

并在失败的情况下:

 return fcallback(null, result);