Importazione di una collezione MongoDB tramite Ruby (ROR)
-
28-10-2019 - |
Domanda
Sto cercando di seminare il mio database con una raccolta esportata tramite lo strumento Mongoexport, ma non riesco a trovare alcun modo per utilizzare lo strumento Mongoimport tramite Ruby.
Ho guardato il Mongo Driver Per come eseguire le query di Mongo tramite Ruby e ha pensato di iterare attraverso ogni riga di JSON dall'esportazione, ma ci sono chiavi come "$ oid" che danno errori quando si tenta di fare una collezione.insert ()
È possibile utilizzare lo strumento Mongoimport in Ruby o qual è il modo migliore per aggiungere codice a seeds.RB in modo che importi una collezione Mongo?
Soluzione
Il mongoimport
Lo strumento è in realtà uno strumento di comando. Quindi non usi il driver mongo per questo.
Invece dovresti "sborsare" e chiamare il processo. Ecco un link sul chiamare un comando dalla shell.
Altri suggerimenti
I documenti di esportazione di Mongoexport in un formato JSON esteso specificato nei documenti MongoDB.
http://www.mongodb.org/display/docs/mongo+extended+json
Il driver non legge automaticamente questo formato. Per seminare un database, è possibile utilizzare MongoDump e Mongorestore, che utilizzano il formato BSON nativo del database. Come ha detto un altro poster, potresti facilmente sborsare per farlo.