C'è un modo per dire a Mongo di ottenere stampe piuttosto? Attualmente, tutto viene emesso su un'unica riga ed è difficile da leggere, specialmente con matrici e documenti nidificati.
C'è un modo per dire a Mongo di ottenere stampe piuttosto? Attualmente, tutto viene emesso su un'unica riga ed è difficile da leggere, specialmente con matrici e documenti nidificati.
Risposte:
( nota: questa è la risposta alla versione originale della domanda, che non aveva i requisiti per "default" )
Puoi chiedere di essere carino.
db.collection.find().pretty()
Puoi aggiungere
DBQuery.prototype._prettyShell = true
al tuo file $HOME/.mongorc.js
per abilitare la stampa carina a livello globale per impostazione predefinita.
$HOME/.mongorc.js
: gist.github.com/mathrawka/6239405 Quindi puoi fare qualcosa come db.users.find (). Ugly () per ottenerlo senza una bella stampa.
mongo --checkConf 'pretty'
, non chiamandodb.collection.find().limit(1)
(nota: questa è la risposta alla domanda aggiornata)
Puoi farlo sulla CLI:
echo DBQuery.prototype._prettyShell = true >> ~/.mongorc.js
E produrrà sempre risultati piuttosto interessanti.
Essendo sostanzialmente una shell javascript, puoi anche usare toArray()
:
db.collection.find().toArray()
Tuttavia, questo stamperà tutti i documenti della raccolta a differenza di pretty()
quello che ti permetterà di iterare. Consultare: http://docs.mongodb.org/manual/reference/method/cursor.toArray/
.toArray()
funzione genera un formato JSON meglio formattato rispetto alla .pretty()
funzione. vale a dire: il primo disco della mia collezione è diverso dal resto (il che potrebbe essere il problema), ma lo .pretty()
scarica come { "_id" : "VERSION", "v" : "1.5" }
- tutto su una riga, dove è stato .toArray()
formattato come il resto dei dischi ..
Prova a Mongo-hacker (modulo nodo), stampa sempre piuttosto. https://github.com/TylerBrock/mongo-hacker
Inoltre migliora la shell mongo (supporta solo la versione> 2.4, la versione corrente è 3.0), come
Sto usando per mentre in produzione env, nessun problema ancora.
$HOME/.mongorc.js
.
Sono arrivato alla domanda ma non sono riuscito a capire come stamparlo dal mongo caricato esternamente. Così:
Questo funziona per console: ed è preferito in console, ma non funziona in javascript esterno caricato da mongo:
db.quizes.find().pretty()
Funziona in javscript esterno caricato da mongo:
db.quizes.find().forEach(printjson)
Controllalo:
db.collection.find().pretty()