class PartialKs::ModelsList

Attributes

manual_configuration[R]

Public Class Methods

new(manual_configuration) click to toggle source
# File lib/partial_ks/models_list.rb, line 5
def initialize(manual_configuration)
  @manual_configuration = manual_configuration
end

Public Instance Methods

all() click to toggle source
# File lib/partial_ks/models_list.rb, line 9
def all
  @all ||= manual_configuration + automatic_configuration_except_manual
end
issues() click to toggle source
# File lib/partial_ks/models_list.rb, line 13
def issues
  all.select{|model, parent| parent.is_a?(PartialKs::MultiParent)}
end

Private Instance Methods

automatic_configuration_except_manual() click to toggle source
# File lib/partial_ks/models_list.rb, line 18
def automatic_configuration_except_manual
  tables_already_present = manual_configuration.map(&:first).map(&:table_name)

  PartialKs.all_rails_models.reject{|model| tables_already_present.include?(model.table_name) }.map do |model|
    table = PartialKs::Table.new(model)
    [table.model, table.inferred_parent_class]
  end
end