Method: ActiveRecord::Associations::Association#scope

Defined in:
activerecord/lib/active_record/associations/association.rb

#scopeObject



107
108
109
110
111
112
113
114
115
116
117
# File 'activerecord/lib/active_record/associations/association.rb', line 107

def scope
  if disable_joins
    DisableJoinsAssociationScope.create.scope(self)
  elsif (scope = klass.current_scope) && scope.try(:proxy_association) == self
    scope.spawn
  elsif scope = klass.global_current_scope
    target_scope.merge!(association_scope).merge!(scope)
  else
    target_scope.merge!(association_scope)
  end
end