Track which user created or updated record in Rails.
Inspired and part of code used from original Trackstamps gem
$ bundler install trackstamps-reborn
class ApplicationController < ActionController::Base
before_action :set_trackstamps_user
def set_trackstamps_user
Trackstamps::Reborn::Current.user = current_user
# or use your current attributes class with proc override in initializers
YourCurrentAttributesClass.user = current_user
end
end
## filename: config/initializers/trackstamps-reborn.rb
Trackstamps::Reborn.config.get_current_user = -> { YourCurrentAttributesClass.user }
# or
Trackstamps::Reborn[:alternative].config.get_current_user = -> { YourAlternativeCurrentAttributesClass.user }
rails generate trackstamps:reborn:migration table_name
class Example < ActiveRecord::Base
include Trackstamps::Reborn
# or
include Trackstamps::Reborn[:whatever]
end
Multiple configuration is achieved with module builder pattern utilizing self.[]
method.
Upon calling
Trackstamps::Reborn[:whatever]
specific module is cached in ::Concurrent::Map
instance.
If you want to report a bug, or have ideas, feedback or questions about the gem, let me know via GitHub issues and I will do my best to provide a helpful answer. Happy hacking!
The gem is available as open source under the terms of the MIT License.
Everyone interacting in this project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.
Pull requests are welcome!