0

所以在自述文件中,它做到了这一点

books = []
10.times do |i|
  books << Book.new(:name => "book #{i}") 
end 
Book.import books

但是我们也可以使用books数组做一个循环来进一步修改数组中的每条记录还是不可能的?自述文件中没有说明这种情况

4

1 回答 1

0

是的,你可以很容易地做到这一点,在导入之前,对象什么都不会发生,Book.new 只是在内存中创建一个新实例——它不会触及数据库。例如

books = []
10.times do |i|
  books << Book.new(:name => "book #{i}") 
end 
books.each_with_index do |book,i|
  book.name = "new book name #{i}"
end
Book.import books

http://ruby-doc.org/core-2.2.0/Enumerable.html

于 2015-02-05T09:57:10.897 回答