Class: Wallaby::ActiveRecord::ModelFinder

Inherits:
ModelFinder
  • Object
show all
Defined in:
lib/adaptors/wallaby/active_record/model_finder.rb

Overview

Model finder

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.baseApplicationRecord, ActiveRecord::Base

This is only for ActiveRecord

Returns:

  • (ApplicationRecord, ActiveRecord::Base)

    base ActiveRecord class



15
16
17
18
# File 'lib/adaptors/wallaby/active_record/model_finder.rb', line 15

def self.base
  return ::ApplicationRecord if defined? ::ApplicationRecord
  ::ActiveRecord::Base
end

Instance Method Details

#allArray<Class>

Returns a list of ActiveRecord subclasses.

Returns:

  • (Array<Class>)

    a list of ActiveRecord subclasses



6
7
8
9
10
11
# File 'lib/adaptors/wallaby/active_record/model_finder.rb', line 6

def all
  self.class.base.descendants.reject do |model_class|
    abstract?(model_class) || anonymous?(model_class) \
      || schema?(model_class) || habtm?(model_class)
  end.sort_by(&:to_s)
end