¿Hay alguna manera de decirle a Mongo que imprima bonita salida? Actualmente, todo se genera en una sola línea y es difícil de leer, especialmente con matrices y documentos anidados.
¿Hay alguna manera de decirle a Mongo que imprima bonita salida? Actualmente, todo se genera en una sola línea y es difícil de leer, especialmente con matrices y documentos anidados.
Respuestas:
( nota: esta es la respuesta a la versión original de la pregunta, que no tenía requisitos para "predeterminado" )
Puedes pedirle que sea bonita.
db.collection.find().pretty()
Puedes añadir
DBQuery.prototype._prettyShell = true
a su archivo $HOME/.mongorc.js
para permitir una impresión bonita de forma global de forma predeterminada.
$HOME/.mongorc.js
: gist.github.com/mathrawka/6239405 Luego puede hacer algo como db.users.find (). Ugly () para obtenerlo sin una bonita impresión.
mongo --checkConf 'pretty'
, no llamandodb.collection.find().limit(1)
(nota: esta es la respuesta a la pregunta actualizada)
Puede hacer esto en la CLI:
echo DBQuery.prototype._prettyShell = true >> ~/.mongorc.js
Y siempre dará resultados bonitos.
Dado que es básicamente un shell de JavaScript, también puede usar toArray()
:
db.collection.find().toArray()
Sin embargo, esto imprimirá todos los documentos de la colección a diferencia de lo pretty()
que le permitirá iterar. Consulte: http://docs.mongodb.org/manual/reference/method/cursor.toArray/
.toArray()
función genera JSON mejor formateada que la .pretty()
función. es decir: El primer disco de mi colección es diferente que el resto (que puede ser el problema), pero .pretty()
lo vuelca a cabo como { "_id" : "VERSION", "v" : "1.5" }
- todo en una línea, en .toArray()
el formato que sea agradable como el resto de los registros ..
Prueba Mongo-hacker (módulo de nodo), siempre se imprime bonito. https://github.com/TylerBrock/mongo-hacker
Más mejora mongo shell (solo admite ver> 2.4, la versión actual es 3.0), como
Estoy usando durante la producción, no hay problemas todavía.
$HOME/.mongorc.js
.
Llegué a la pregunta, pero no pude descubrir cómo imprimirla desde un mongo cargado externamente. Entonces:
Esto funciona para la consola: y se prefiere en la consola, pero no funciona en javascript externo cargado con mongo:
db.quizes.find().pretty()
Esto funciona en javscript externo cargado con mongo:
db.quizes.find().forEach(printjson)
Mira esto:
db.collection.find().pretty()