0

如果我有类似的东西:

Model1.update_all ['a1 = ?, a2 = ?', v1, v2], ['id = ?', id1]
Model2.update_all  ['a3 = ?', v3], ['id = ?', id2]

我如何确保如果上述更新之一失败,它们都没有效果,即。执行一种回滚?

4

1 回答 1

2

这个应该做。。

Model1.transaction do
  Model1.update_all ['a1 = ?, a2 = ?', v1, v2], ['id = ?', id1]
  Model2.update_all  ['a3 = ?', v3], ['id = ?', id2]
end
于 2012-06-24T17:03:16.423 回答