2012-02-04 3 views
2

Я знаю, что в Rails все обратные вызовы ActiveRecord выполняются внутри транзакции. Поэтому, если что-то пойдет не так, ничего не изменилось/не получилось. Монгольский камень справится с этим так же (никаких транзакций, насколько я знаю)?Mongoid + Rails: Атомные обратные вызовы?

Thx!

ответ

2

В mongodb нет такой вещи, как транзакция, поэтому нет, это не будет обрабатываться для вас. Если что-то взорвалось в after_save или что-то в этом роде, вам нужно будет исправить ущерб самостоятельно.

Общий подход (как подсказки FAQ) заключается в том, чтобы попытаться спроектировать вокруг этого, используя атомные модификаторы монго.