タグ付けされた質問 「data-access」

6
Railsの1回の呼び出しで複数のオブジェクトを保存する
私はレールの中で次のようなことをしているメソッドを持っています: a = Foo.new("bar") a.save b = Foo.new("baz") b.save ... x = Foo.new("123", :parent_id => a.id) x.save ... z = Foo.new("zxy", :parent_id => b.id) z.save 問題は、追加するエンティティが増えるほど、時間がかかることです。これは、すべてのレコードについてデータベースにアクセスする必要があるためと考えられます。ネストされているため、親を保存する前に子を保存できないことはわかっていますが、一度にすべての親を保存してから、すべての子を保存したいと思います。次のようなことをするのがいいでしょう: a = Foo.new("bar") b = Foo.new("baz") ... saveall(a,b,...) x = Foo.new("123", :parent_id => a.id) ... z = Foo.new("zxy", :parent_id => b.id) saveall(x,...,z) それは、たった2つのデータベースヒットでそれをすべて行います。これをレールで行う簡単な方法はありますか、それとも一度に1つずつ行うのが難しいのですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.