Вы правы - поскольку ваши данные в формате JSON, mongoimport - это инструмент, который вы хотите использовать. После того, как вы импортировали свои данные, вы можете настроить схемы документов Mongoid в соответствии с импортированными вами данными.
Вот полезный учебник mongoimport , если вы хотите попробовать его на некотором примереdata.
Для данных инвентаризации в этом руководстве вы можете настроить схему:
# JSON data: { "item": "journal", "qty": 25, "size": { "h": 14, "w": 21, "uom": "cm" }, "status": "A" }
class Inventory
include Mongoid::Document
store_in collection: 'inventory'
field :item, type: String
field :qty, type: Integer
field :size, type: Hash
field :status, type: String
end
Некоторые вещи, которые следует отметить здесь:
Убедитесь, что вы импортируете свои данные в имя коллекции по умолчанию для модели, которую вы хотите создать (т. Е. Импортируете в коллекцию "users" для модели с именем User
) ИЛИ в модели укажите, какая коллекцияданные хранятся в (используя метод store_in
)
Когда вы импортируете данные в виде хэша, у вас есть несколько вариантов их представления в Mongoid. Я только что использовал Hash в этом примере, но вы также можете сделать size
своим собственным встроенным документом.