0

Mongoid 文档之后,我尝试将哈希数组传递给该create方法,但它会引发错误。

代码是:

Person.create([
  { first_name: "Heinrich", last_name: "Heine" },
  { first_name: "Willy", last_name: "Brandt" }
])

它抛出以下错误:

NoMethodError: undefined method `keys' for #<Array:0xae4f69c>

跑步:

mongoid-3.0.23
ruby 1.9.3
rails 3.2.13
4

1 回答 1

2

该功能是在 Mongoid 3.1.0 中引入的,在以前的版本中,该create方法只接受一个字段哈希作为参数来创建一个文档,因为您正在传递一个数组,所以您会收到错误。

如果您想使用 Mongoid 3.1.0 之前的版本将一批文档插入到集合中,您可以使用该Moped::Collection#insert方法进行操作,如下所示:

Person.collection.insert([
  { first_name: "Heinrich", last_name: "Heine" },
  { first_name: "Willy", last_name: "Brandt" }
])
于 2013-07-12T15:16:56.343 回答