मैं रेल में एक विधि है कि कुछ इस तरह कर रहा है:
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)
यह केवल दो डेटाबेस हिट में यह सब करेगा। वहाँ रेल में यह करने के लिए एक आसान तरीका है, या मैं एक समय में एक कर रहा हूँ?