0
我寫了一個非常簡單的腳本來打印工作腳本的某些狀態的計數。不過,我無法打印我用find()查詢和投影的錯誤消息。這是腳本:在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的文檔中的一些東西。
您可能需要使用**'findOne()'**方法,而不是**'找到()'**,因爲後者只返回一個遊標而不是實際的文檔。 – chridam
您正在打印遊標的內容而不是查詢的結果(請參見:[將mongodb shell輸出打印到文件](http://stackoverflow.com/questions/13104800/printing-mongodb-shell-output-to -文件))。 – Stennie
感謝您的鏈接,這確實是重複的。我沒有意識到這個答案符合我的用例,因爲我完全不熟悉這個數據庫,特別是MongoDB的東西:) –