Ruby 创建一批文档时出错
接下来,我试图将哈希数组传递给Ruby 创建一批文档时出错,ruby,mongoid,Ruby,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.1
create
方法,但它抛出了一个错误
代码是:
Person.create([
{ first_name: "Heinrich", last_name: "Heine" },
{ first_name: "Willy", last_name: "Brandt" }
])
它抛出以下错误:
NoMethodError: undefined method `keys' for #<Array:0xae4f69c>
该功能是在Mongoid 3.1.0中引入的,在以前的版本中,
create
方法只接受一个散列字段作为参数,以创建一个文档,因为传递的是一个数组,所以会出现错误
如果要使用3.1.0以上版本的Mongoid将一批文档插入到集合中,可以使用Moped::collection#insert
方法,如下所示:
Person.collection.insert([
{ first_name: "Heinrich", last_name: "Heine" },
{ first_name: "Willy", last_name: "Brandt" }
])
工作完美。多谢!
Person.collection.insert([
{ first_name: "Heinrich", last_name: "Heine" },
{ first_name: "Willy", last_name: "Brandt" }
])