Я в приложении Rails 3.2. Я хочу, чтобы определенные поля в модели с именем Candidate сохранялись в модели Update, когда пользователь-администратор изменяет их через CRUD (что происходит с вызовом update_attributes стандартным способом скаффолда Rails).
У меня есть код в модели Candidate, который отслеживает изменения в фильтре before_save:
before_save :check_changed
def check_changed
period_contributions_changed?
end
Это находится в файле модели кандидата.rb.
Я бы хотел, чтобы измененное значение в period_contributions и других указанных полях вызывало создание другой записи Update.
Обновление будет содержать идентификатор кандидата, имя измененного поля, предыдущее значение и новое значение.
Похоже, что для этого потребуется, чтобы код модели вызывал метод контроллера обновления, что кажется плохой практикой. Есть ли лучшая практика для этого?