संग्रह में कोई आइटम जोड़ने से वह तुरंत सहेजा जाता है (जब तक कि उपयोगकर्ता सहेजा नहीं जाता है)। सहेजने के लिए कॉल अपना लेन-देन बनाता है और यही वह है जिसे वापस रोल किया जाता है, न कि वह लेनदेन जिसमें आइटम सहेजा जाता है
आप स्पष्ट रूप से एक बनाकर सब कुछ एक ही लेनदेन में मजबूर कर सकते हैं।
begin
User.transaction do
@user.items << item
@user.save!
render :json => {}, :status => :ok
end
rescue ActiveRecord::RecordInvalid
render :json => {:status => :error, :errors => item.errors}, :status => :bad_request
end