Mongoid + Rails: атомные обратные вызовы? - PullRequest
2 голосов
/ 04 февраля 2012

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

Thx!

1 Ответ

2 голосов
/ 04 февраля 2012

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

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

...