多個資料庫連線
事務處理單個資料庫連線。如果你有多個特定於類的資料庫,則事務不會保護它們之間的互動。一種解決方法是在你更改其模型的每個類上開始一個事務:
Student.transaction do
Course.transaction do
course.enroll(student)
student.units += course.units
end
end
這是一個糟糕的解決方案,但完全分散式事務超出了 ActiveRecord 的範圍。
事務處理單個資料庫連線。如果你有多個特定於類的資料庫,則事務不會保護它們之間的互動。一種解決方法是在你更改其模型的每個類上開始一個事務:
Student.transaction do
Course.transaction do
course.enroll(student)
student.units += course.units
end
end
這是一個糟糕的解決方案,但完全分散式事務超出了 ActiveRecord 的範圍。