在MongoDB脚本中打印find()的结果

时间:2015-04-22 12:14:06

标签: mongodb

我编写了一个非常简单的脚本来打印工作脚本的某些状态的计数。但是,我无法打印我使用find()查询和投影的错误消息。这是脚本:

conn = new Mongo();
db = conn.getDB("AABackend");
...
print("Error messages:");
print(db.jobs.find({"state":"failed"}, {error_message:1}));

这是最后一行不起作用。我希望有类似的东西:

{ "_id" : ObjectId("55377e5293671115faf44b15"), "error_message" : "foobar" }

但我得到

DBQuery: AABackend.jobs -> { "state" : "failed" }

我在MongoDB文档中找不到关于此的内容,但只是一个提示确实有帮助。

1 个答案:

答案 0 :(得分:0)

我不确定这是哪个驱动程序,但在Node.js中,它将返回游标对象,我认为这是你打印出来的。您正在打印光标对象而不是结果。这可能是它打印DBQuery的原因:.......

在Node.js中我会做这样的事情:

db.jobs.find({"state":"failed"}).toArray(function(err, docs) {
    console.log(docs);
};

基本上尝试找到如何从语言驱动程序中的光标对象获取结果 - >相当于toArray()

希望这有帮助

相关问题