Audited Serialize
Гем для сериализации аудит-логов на базе Audited.
Установка
Добавить в Gemfile
gem 'audited-serialize'
И выполнить:
bundle
Использование
Для вызова сериализованного списка изменений вызовите метод .changes_list
на экземпляре audit-класса (по умолчанию - Audited::Audit
)
audit = Audited::Audit.first
audit.changes_list
Заголовки связанных записей
При наличии в аудит-логах полей, содержащих ID связанных сущностей, по умолчанию будет отображено название (поле name
) этой сущности. При отсутствии у сущности поля name
или необходимости отображения значения другого поля можно задать название этого поля в модели
# app/models/user.rb
class User < ApplicationRecord
audit title: :email
end
Конфигурация
Изменение настроек сериализации осуществляется путем редактирования стандартного файла конфигурации Audited
# config/initializers/audited.rb
Audited.config do |config|
end
Исключения
Для добавления исключений для полей сущностей, которые не будут отображаться в списке добавьте в конфиг serialization_exceptions
.
# config/initializers/audited.rb
Audited.config do |config|
config.serialization_exceptions = {
'User' => ['role']
}
end