Module | ActsAsAudited::Auditor::ClassMethods |
In: |
lib/acts_as_audited/auditor.rb
|
[self.primary_key, inheritance_column, 'lock_version', 'created_at', 'updated_at']
You can add to those by passing one or an array of fields to skip.
class User < ActiveRecord::Base acts_as_audited :except => :password end
class User < ActiveRecord::Base acts_as_audited :protect => false attr_accessible :name end
# File lib/acts_as_audited/auditor.rb, line 49 49: def acts_as_audited(options = {}) 50: # don't allow multiple calls 51: return if self.included_modules.include?(ActsAsAudited::Auditor::InstanceMethods) 52: 53: options = {:protect => accessible_attributes.empty?}.merge(options) 54: 55: class_attribute :non_audited_columns, :instance_writer => false 56: class_attribute :auditing_enabled, :instance_writer => false 57: class_attribute :audit_associated_with, :instance_writer => false 58: 59: if options[:only] 60: except = self.column_names - options[:only].flatten.map(&:to_s) 61: else 62: except = [self.primary_key, inheritance_column, 'lock_version', 63: 'created_at', 'updated_at', 'created_on', 'updated_on'] 64: except |= Array(options[:except]).collect(&:to_s) if options[:except] 65: end 66: self.non_audited_columns = except 67: self.audit_associated_with = options[:associated_with] 68: 69: if options[:comment_required] 70: validates_presence_of :audit_comment, :if => :auditing_enabled 71: before_destroy :require_comment 72: end 73: 74: attr_accessor :audit_comment 75: unless accessible_attributes.empty? || options[:protect] 76: attr_accessible :audit_comment 77: end 78: 79: has_many :audits, :as => :auditable 80: attr_protected :audit_ids if options[:protect] 81: Audit.audited_class_names << self.to_s 82: 83: after_create :audit_create if !options[:on] || (options[:on] && options[:on].include?(:create)) 84: before_update :audit_update if !options[:on] || (options[:on] && options[:on].include?(:update)) 85: before_destroy :audit_destroy if !options[:on] || (options[:on] && options[:on].include?(:destroy)) 86: 87: attr_accessor :version 88: 89: extend ActsAsAudited::Auditor::SingletonMethods 90: include ActsAsAudited::Auditor::InstanceMethods 91: 92: self.auditing_enabled = true 93: end