Sha256: 024c370e936916b4d36c822667b4a6a2260de2b7eb2fcdd41b98ea00aa98fb8c

Contents?: true

Size: 754 Bytes

Versions: 8

Compression:

Stored size: 754 Bytes

Contents

module ModelsAuditor
  class AuditRecord < ActiveRecord::Base
    ACTION_CREATE  = 0
    ACTION_UPDATE  = 1
    ACTION_DESTROY = 2
    begin
      establish_connection [ModelsAuditor.config.connection_namespace, Rails.env].map(&:presence).compact.join('_').to_sym
    rescue StandardError
      # ignored
    end

    self.table_name = ModelsAuditor.config.audit_records_table_name

    belongs_to :request, class_name: ModelsAuditor::AuditRequest.name, foreign_key: :request_id
    belongs_to :auditable, polymorphic: true, foreign_key: :object_id, foreign_type: :object_type

    enum action: {action_create: ACTION_CREATE, action_update: ACTION_UPDATE, action_destroy: ACTION_DESTROY}

    validates :object_type, :object_id, presence: true
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
models_auditor-1.2.1 app/models/models_auditor/audit_record.rb
models_auditor-1.2.0 app/models/models_auditor/audit_record.rb
models_auditor-1.1.1 app/models/models_auditor/audit_record.rb
models_auditor-1.1.0 app/models/models_auditor/audit_record.rb
models_auditor-1.0.7 app/models/models_auditor/audit_record.rb
models_auditor-1.0.6 app/models/models_auditor/audit_record.rb
models_auditor-1.0.5 app/models/models_auditor/audit_record.rb
models_auditor-1.0.3 app/models/models_auditor/audit_record.rb