Skip to content

Latest commit

 

History

History
65 lines (41 loc) · 2.58 KB

README.md

File metadata and controls

65 lines (41 loc) · 2.58 KB

Rails Admin History Rollback

Gem Version Code Climate

RailsAdmin extension for enabling users to easily visualise and revert their history audit created by the PaperTrail gem.

Installation

To enable rails_admin_history_rollback, add the following to your Gemfile ensuring it is added after rails_admin:

gem 'rails_admin'
gem 'rails_admin_history_rollback'

It should go without saying that this plugin also requires the paper_trail gem.

E.g. gem 'paper_trail'

Configuration

Simply enable paper_trail on your model --with-changes --with-associations and set up as usual by following the paper_trail instructions.

rails generate paper_trail:install --with-changes --with-associations

In the rails_admin.rb initializer, uncomment the following lines to enable auditing:

history_index
history_show

Notes

You may also need to require "paper_trail" in application.rb

As pointed out in issue #8, paper_trail master branch and release v5.0.0 (when available) causes session issues. Login is reset by devise; paper_trail tries to access to the current_user variable before devise (airblade/paper_trail#556).

The fix is to manually add set_paper_trail_whodunnit before_action as advised here: (https://github.com/airblade/paper_trail#finding-out-who-was-responsible-for-a-change)

# app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
  [...]
  before_action :set_paper_trail_whodunnit
  [...]
end

Screenshots

History view

Modal view

About Jemcode

Jemcode

This repository is maintained and funded by Jemcode Limited. We are available for hire.