Импорт коллекции MongoDb через Ruby (ROR) - PullRequest
0 голосов
/ 02 февраля 2011

Я пытаюсь заполнить свою базу данных коллекцией, экспортированной с помощью инструмента mongoexport, но я не могу найти какой-либо способ использовать инструмент mongoimport через Ruby.

Я посмотрел на Mongo Driver о том, как выполнять запросы монго через Ruby, и думал об итерации по каждой строке json из экспорта, но есть ключи типа "$ oid", которые выдают ошибки при попытке выполнить collection.insert ()

Возможно ли использовать инструмент mongoimport в Ruby или как лучше всего добавить код в seed.rb, чтобы он импортировал коллекцию mongo?

Ответы [ 2 ]

1 голос
/ 02 февраля 2011

Инструмент mongoimport на самом деле является инструментом командной строки. Таким образом, вы не используете драйвер Монго для этого.

Вместо этого вы должны "выложить" и вызвать процесс. Вот ссылка на вызов команды из оболочки.

Вызов команд оболочки из Ruby

0 голосов
/ 02 февраля 2011

mongoexport экспортирует документы в расширенном формате json, указанном в документации MongoDB.

http://www.mongodb.org/display/DOCS/Mongo+Extended+JSON

Драйвер не читает этот формат автоматически. Для заполнения базы данных вы можете использовать mongodump и mongorestore, которые используют собственный формат BSON базы данных. Как упоминалось в другом плакате, вы можете легко раскошелиться, чтобы сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...