class Audited::Adapters::ActiveRecord::Audit
Audit
saves the changes to ActiveRecord
models. It has the following attributes:
-
auditable
: theActiveRecord
model that was changed -
user
: the user that performed the change; a string or anActiveRecord
model -
action
: one of create, update, or delete -
audited_changes
: a serialized hash of all the changes -
comment
: a comment set with the audit -
version
: the version of the model -
request_uuid
: a uuid based that allows audits from the same controller request -
created_at
: Time that the change was performed
Public Instance Methods
ancestors()
click to toggle source
Return all audits older than the current one.
# File lib/audited/adapters/active_record/audit.rb, line 35 def ancestors self.class.where(['auditable_id = ? and auditable_type = ? and version <= ?', auditable_id, auditable_type, version]) end
user_as_string()
click to toggle source
@private
# File lib/audited/adapters/active_record/audit.rb, line 53 def user_as_string self.user_as_model || self.username end
Also aliased as: user
user_as_string=(user)
click to toggle source
Allows user to be set to either a string or an ActiveRecord
object @private
# File lib/audited/adapters/active_record/audit.rb, line 42 def user_as_string=(user) # reset both either way self.user_as_model = self.username = nil user.is_a?(::ActiveRecord::Base) ? self.user_as_model = user : self.username = user end
Also aliased as: user=
Private Instance Methods
set_version_number()
click to toggle source
# File lib/audited/adapters/active_record/audit.rb, line 60 def set_version_number max = self.class.auditable_finder(auditable_id, auditable_type).maximum(:version) || 0 self.version = max + 1 end