method
through_scope
v4.2.1 -
Show latest stable
- Class:
ActiveRecord::Associations::Preloader::ThroughAssociation
through_scope()private
No documentation available.
# File activerecord/lib/active_record/associations/preloader/through_association.rb, line 75
def through_scope
scope = through_reflection.klass.unscoped
if options[:source_type]
scope.where! reflection.foreign_type => options[:source_type]
else
unless reflection_scope.where_values.empty?
scope.includes_values = Array(reflection_scope.values[:includes] || options[:source])
scope.where_values = reflection_scope.values[:where]
scope.bind_values = reflection_scope.bind_values
end
scope.references! reflection_scope.values[:references]
scope = scope.order reflection_scope.values[:order] if scope.eager_loading?
end
scope
end