Class: ForestLiana::SchemaUtils

Inherits:
Object
  • Object
show all
Defined in:
app/services/forest_liana/schema_utils.rb

Class Method Summary collapse

Class Method Details

.associations(active_record_class) ⇒ Object



4
5
6
7
8
# File 'app/services/forest_liana/schema_utils.rb', line 4

def self.associations(active_record_class)
  active_record_class
    .reflect_on_all_associations
    .select {|a| !polymorphic?(a)}
end

.find_model_from_table_name(table_name) ⇒ Object



16
17
18
# File 'app/services/forest_liana/schema_utils.rb', line 16

def self.find_model_from_table_name(table_name)
  ActiveRecord::Base.subclasses.find {|s| s.table_name == table_name}
end

.one_associations(active_record_class) ⇒ Object



10
11
12
13
14
# File 'app/services/forest_liana/schema_utils.rb', line 10

def self.one_associations(active_record_class)
  self.associations(active_record_class).select do |x|
    [:has_one, :belongs_to].include?(x.macro)
  end
end

.tables_namesObject



20
21
22
# File 'app/services/forest_liana/schema_utils.rb', line 20

def self.tables_names
  ActiveRecord::Base.connection.tables
end