We don’t want this object to be put on the scoping
stack, because that could create
an infinite loop where we call an @association method, which gets the
current scope, which is this object, which delegates to @association, and
so on.
# File activerecord/lib/active_record/associations/collection_proxy.rb, line 873
def scoping
@association.scope.scoping { yield }
end