रेल में लेनदेन ब्लॉक का उपयोग करके, मैं एक शॉट में मॉडल के कई उदाहरण कैसे अपडेट/सहेज सकता हूं?रेल में एक ActiveRecord लेनदेन में एकाधिक रिकॉर्ड अपडेट करें
मैं सैकड़ों अभिलेखों के लिए मूल्यों को अपडेट करना चाहता हूं; मान प्रत्येक रिकॉर्ड के लिए अलग हैं। यह एक विशेषता के लिए एक जन-अद्यतन स्थिति है। Model.update_all (attr: value) यहां उचित नहीं है।
MyModel.transaction do
things_to_update.each do |thing|
thing.score = rand(100) + rand(100)
thing.save
end
end
save
बल्कि आसपास के लेन-देन में अपडेट batching से, अपने आप लेन-देन जारी करने के लिए लगता है। मैं चाहता हूं कि सभी अपडेट एक बड़े लेनदेन में जाएं।
मैं इसे कैसे पूरा कर सकता हूं?
ActiveRecord आयात [मणि] हो सकता है (https://github.com/zdennis/activerecord-import/wiki) होगा आपके लिए काम .. – tihom