Class: AssociationReporter::AssociationAssumption

Inherits:
Assumption
  • Object
show all
Defined in:
lib/association-reporter/assumption.rb

Direct Known Subclasses

OneToManyAssociationAssumption

Instance Method Summary collapse

Methods inherited from Assumption

#initialize

Constructor Details

This class inherits a constructor from AssociationReporter::Assumption

Instance Method Details

#assoc_klassObject



60
61
62
63
64
65
66
67
# File 'lib/association-reporter/assumption.rb', line 60

def assoc_klass
  begin
    return reflection.klass
  rescue NameError => e
    raise e if assoc_klass_name && !e.name.include?(assoc_klass_name)
  end
  nil
end

#assoc_klass_labelObject



69
70
71
# File 'lib/association-reporter/assumption.rb', line 69

def assoc_klass_label
  labelize(assoc_klass_name, assoc_klass)
end

#assoc_klass_nameObject



56
57
58
# File 'lib/association-reporter/assumption.rb', line 56

def assoc_klass_name
  reflection.class_name
end

#assoc_tableObject



73
74
75
# File 'lib/association-reporter/assumption.rb', line 73

def assoc_table
  assoc_klass.try(:table_name) || assoc_klass_name.underscore.downcase.pluralize
end

#assoc_table_labelObject



77
78
79
# File 'lib/association-reporter/assumption.rb', line 77

def assoc_table_label
  labelize(assoc_table, valid_table?)
end

#valid?Boolean

Returns:

  • (Boolean)


85
86
87
# File 'lib/association-reporter/assumption.rb', line 85

def valid?
  valid_table? && assoc_klass
end

#valid_table?Boolean

Returns:

  • (Boolean)


81
82
83
# File 'lib/association-reporter/assumption.rb', line 81

def valid_table?
  ActiveRecord::Base.connection.table_exists?(assoc_table)
end