module ActiveRecordLogger::InstanceMethods
Private Instance Methods
prepare_rlog_item()
click to toggle source
# File lib/rlog_items/active_record_logger.rb, line 22 def prepare_rlog_item self.log = RlogItems::RlogItem.new self.log.user = ActiveRecord::Base.current_user self.log.ip = ActiveRecord::Base.current_request ? ActiveRecord::Base.current_request.remote_ip : "rails console" self.log.record = self self.log.name = self.to_s @changes = ActiveSupport::HashWithIndifferentAccess.new self.changes.each do |k, v| @changes[k] = [v.first] if self.class.rlog_fields.include?(k.to_sym) and v[0] != v[1] end end
save_rlog_item()
click to toggle source
# File lib/rlog_items/active_record_logger.rb, line 34 def save_rlog_item if @changes.present? #|| self.log.hack @changes.each do |k, v| @changes[k].push self.send(k) end self.log.record_changes = @changes self.log.save end end