build_default_scope(base_rel = nil) protected

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activerecord/lib/active_record/scoping/default.rb, line 104
        def build_default_scope(base_rel = nil) # :nodoc:
          return if abstract_class?

          if self.default_scope_override.nil?
            self.default_scope_override = !Base.is_a?(method(:default_scope).owner)
          end

          if self.default_scope_override
            # The user has defined their own default scope method, so call that
            evaluate_default_scope { default_scope }
          elsif default_scopes.any?
            base_rel ||= relation
            evaluate_default_scope do
              default_scopes.inject(base_rel) do |default_scope, scope|
                scope = scope.respond_to?(:to_proc) ? scope : scope.method(:call)
                default_scope.merge(base_rel.instance_exec(&scope))
              end
            end
          end
        end
Register or log in to add new notes.