【发布时间】:2015-04-22 12:14:06
【问题描述】:
我编写了一个非常简单的脚本来打印工作脚本的某些状态的计数。但是,我无法打印我使用 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 文档中找不到关于此的内容,但只是提示会很有帮助。
【问题讨论】:
-
你可能需要使用
findOne()方法而不是find()因为后者只返回一个光标而不是实际文档。跨度> -
您当前正在打印游标的内容而不是查询的结果(请参阅:Printing mongodb shell output to File)。
-
感谢链接,确实是重复的。我没有意识到这个答案适合我的用例,因为我对这个数据库完全陌生,尤其是 MongoDB 的东西 :)
标签: mongodb