使用Moped
gem时,我可以使用以下内容存储哈希数组:
users = [{username: "ben", password: "123456", type: "admin" }, {username: "joe", password: "abcd1234" }]
Mongoid::Sessions.default["collection"].insert(users)
使用mongoid文档,它看起来像:
class User
field :username, type: String
field :password, type: String
end
users.each { |user_hash| User.create(user_hash) }
这意味着每个插入操作。
你知道一种保持单一操作方法的方法吗?也许类似于ActiveRecord
中的交易?
答案 0 :(得分:1)
您可以将文档转换回哈希,并通过一次调用将其插入#create
:
User.create(users.map(&:attributes))