Просто используйте gem activerecord-import для рельсов 3 или ar-extensions для рельсов 2
https://github.com/zdennis/activerecord-import/wiki
В Gemfile:
gem "activerecord-import"
В модели:
import "activerecord-import"
В контроллере:
books = []
10.times do |i|
books << Book.new(:name => "book #{i}")
end
Book.import books
Этот код импортирует 10 записей одним запросом;)
или
#@messages = ActiveSupport::JSON.decode(@content)
@messages = JSON(@content)
#prepare data for insert by one insert
fields = [:field1, :field2]
items = []
@messages.each do |m|
items << [m["field1"], m["field2"]]
end
Message.import fields, items