質問編集履歴
2
タイトル編集、誤植修正
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
activerecord-importを使用したバルクインサートで親子モデルの同時保存
|
1
|
+
[Rails] activerecord-importを使用したバルクインサートで親子モデルの同時保存
|
body
CHANGED
@@ -26,8 +26,8 @@
|
|
26
26
|
子モデルも一緒にINSERTされるはずなのですが、オプションの有無関わらず親しか保存されません。
|
27
27
|
(保存時にエラーは特に表示されません)
|
28
28
|
|
29
|
-
また、booksとは別に
|
29
|
+
また、booksとは別にauthorsという配列を作り、Book保存後に`Author.imoport authors`として
|
30
|
-
別々に保存することも試みたのですが、結局Book.
|
30
|
+
別々に保存することも試みたのですが、結局Book.importを使ってbookを保存した後に
|
31
31
|
それぞれのbookのidが分からず、authoerとのリレーションをキープできずに断念しました。
|
32
32
|
|
33
33
|
GEM使用有無にかかわらず、なんとか親子同時にバルクインサートできないでしょうか。
|
1
コード修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,8 +13,9 @@
|
|
13
13
|
# Book has_many authors / Author belongs to Book という関係になっています。
|
14
14
|
books = []
|
15
15
|
10000.times do |i|
|
16
|
+
book = Book.new(:name => "book #{i}")
|
16
|
-
author
|
17
|
+
book.author.build(:name => "author #{i}")
|
17
|
-
books <<
|
18
|
+
books << book
|
18
19
|
end
|
19
20
|
Book.import books, recursive: true
|
20
21
|
|