Кто-нибудь не слышал о триггерах базы данных?
Если вы запишите триггер базы данных on_update на сервере базы данных, то при каждом обновлении записи будет создаваться хронологическая копия значений предыдущей записи в связанной таблице аудита.
Это одна из главных вещей, которые я презираю в Rails. Он тратит так много времени, пытаясь сделать все для разработчика, что он вводит разработчиков в заблуждение, что они должны следовать таким вульгарным курсам действий, как написание специализированных методов рельсов, чтобы сделать то, что чертов сервер базы данных уже полностью способен сделать самостоятельно.
снова качает головой в Rails