Rails 3.1 before_create обратный вызов не срабатывает после модели клона - PullRequest
4 голосов
/ 13 августа 2011

У меня есть модель. Я хочу клонировать это. Но после того, как я запустил model.save! мой обратный вызов before_create не сработал. Итак, мне интересно, неужели уловка заставляет рельсов думать, что этот объект-клон на самом деле новый?

Спасибо

Ответы [ 2 ]

5 голосов
/ 13 августа 2011

Это ожидаемое поведение в Rails 3.1.На активной записи CHANGELOG :

Вызов клона ActiveRecord :: Base # приведет к поверхностной копии записи, включая копирование замороженного состояния.Обратные вызовы не будут вызываться.

Вы можете использовать dup.Он запустит обратный вызов before_create.

0 голосов
/ 13 августа 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...