Menambahkan item ke koleksi akan segera menyimpannya (kecuali pengguna belum disimpan). Panggilan untuk menyimpan membuat transaksinya sendiri dan itulah yang dibatalkan, bukan transaksi di mana item tersebut disimpan
Anda dapat memaksa semuanya ke dalam transaksi yang sama dengan membuatnya secara eksplisit.
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