0

gem 'activerecord-import'Railsアプリケーションでの一括インポートに使用しています。次のようなサンプルコードがあります。

articles = []

10000.times do |i| 
 articles << Article.new(:name => "Article #{i}") 
end 

Article.import articles

このコードでは、数秒で 10000 件の新しいレコードをインポートしています。しかし、次のような記事のコメントを大量に作成している場合:

comments = []
@article= Article.find(1)
10000.times do |i| 
  comments << @article.comments.find_or_create_by(:name => "comment #{i}") 
end 

Comment.import comments

上記のコードを実行すると、配列にプッシュされることなく、ループ内にコメントが作成されます。作成前にすべてのコメントを配列にプッシュするにはどうすればよいですか。助けてください。

4

0 に答える 0