web-dev-qa-db-ja.com

Mongodbでコンソールにログインします

このコマンドをrobomongoで実行すると、さまざまな行の出力が得られます。

 db.getCollection('houses').find({})

今、私はmongoシェルで同じコマンドを実行しようとしました:

私はスクリプトを書きましたmongo.js

  conn = new Mongo();
  db = conn.getDB("development");

  db.getCollection('houses').find({});

次のコマンドでコンソールを開きました。

  mongo --Shell

そして、コマンドを実行しようとしました:

  > load('mongo.js')
  true

理解できません 出力としてtrueのみを取得する理由。クエリ出力を見たい!何が間違っていますか?ありがとう

9
John Smith

シェルスクリプトでは、_console.log_の代わりに使用できます

print() //プレーンテキストの場合、

またはprintjson() // jsonの場合

使用法 :

printjson(db.getCollection('houses').find({}));

24
codeofnode

使用する場合

printjson(db.getCollection('houses').find({})); 

検索オブジェクトから出力を取得します。

{
"_mongo" : connection to ***.***.***.***,
"_db" : *****,
"_collection" : ***.houses,
"_ns" : "*****.houses",
"_query" : {

},
"_fields" : null,
"_limit" : 0,
"_skip" : 0,
"_batchSize" : 0,
"_options" : 4,
"_cursor" : null,
"_numReturned" : 0,
"_special" : false,
"help" : function () {
print("find(<predicate>, <projection>) modifiers")
print("\t.sort({...})")
 ...........
}

使用する場合

db.getCollection('houses').find({}).forEach(printjson)

希望の出力が得られます。

2
maskillbt