Как правильно организовать лог действий админа в Rails + Mongoid

Рейтинг: 0Ответов: 1Опубликовано: 30.01.2015

Здравствуйте.

Появилась задача хранить в базе все действия админа, т.е. CRUD-операции над моделями + когда вошел/вышел с возможностью откатить изменения. Была идея использовать callbacks, но мне она не нравится, из-за того, что придется вносить изменения в каждую модель. Проблема в том, что некоторые модели объявлены в гемах, т.е. вне проекта, и трогать их не стоит. Есть ли способ следить за изменениями моделей извне? Мне кажется подходящей идея использования Observers, но они удалены из ядра рельс, это наводит на размышления о целесообразности этого решения. Заодно хотелось бы узнать, почему обсерверы были удалены, в инете ничего не нашел.

Спасибо!

Ответы

▲ 1

Возможно вам стоит использовать гем papertrail. С помощью него очень легко можно организовать систему контроля изменений модели. Вручную я бы это не стал писать.