Exception: ActiveRecord::HasManyThroughSourceAssociationNotFoundError

Inherits:
ActiveRecordError
  • Object
show all
Defined in:
lib/active_record/associations/errors.rb

Overview

:nodoc:

Instance Method Summary collapse

Constructor Details

#initialize(reflection = nil) ⇒ HasManyThroughSourceAssociationNotFoundError

Returns a new instance of HasManyThroughSourceAssociationNotFoundError.



155
156
157
158
159
160
161
162
163
164
# File 'lib/active_record/associations/errors.rb', line 155

def initialize(reflection = nil)
  if reflection
    through_reflection      = reflection.through_reflection
    source_reflection_names = reflection.source_reflection_names
    source_associations     = reflection.through_reflection.klass._reflections.keys
    super("Could not find the source association(s) #{source_reflection_names.collect(&:inspect).to_sentence(two_words_connector: ' or ', last_word_connector: ', or ')} in model #{through_reflection.klass}. Try 'has_many #{reflection.name.inspect}, :through => #{through_reflection.name.inspect}, :source => <name>'. Is it one of #{source_associations.to_sentence(two_words_connector: ' or ', last_word_connector: ', or ')}?")
  else
    super("Could not find the source association(s).")
  end
end