title: Rails has_many through aliasing with source and source_type for multiple types
body: <p>So here is a sample class </p>
  
  <pre><code>class Company &lt; ActiveRecord::Base
      has_many :investments
      has_many :vc_firms, through: :investments, source: :investor, source_type: 'VentureFirm'
      has_many :angels, through: :investments, source: :investor, source_type: 'Person'
  end
  </code></pre>
  
  <p>@company.angels and @company.vc_firms works as expected.  But how would I have @company.investors that are comprised of both source types? That would work for all polymorphics on the investor column of the Investments table? or perhaps a way of using a scope to merge all source_type?</p>
  
  <p>Investment model looks like this:</p>
  
  <pre><code>class Investment &lt; ActiveRecord::Base
    belongs_to :investor, polymorphic: true
    belongs_to :company
  
    validates :funding_series, presence: true #, uniqueness: {scope: :company}
    validates :funded_year, presence: true, numericality: true
  end
  </code></pre>
  
  <p>Angels are associated through the Person model</p>
  
  <pre><code>class Person &lt; ActiveRecord::Base
      has_many :investments, as: :investor
  end
  </code></pre>
  
  <p>Relevant financial organization model associations:</p>
  
  <pre><code>class FinancialOrganization &lt; ActiveRecord::Base
      has_many :investments, as: :investor
      has_many :companies, through: :investments
  end
  </code></pre>