module ActiveRecord::Scoping::Default::ClassMethods

def unscoped(&block)

}
Post.limit(10) # Fires "SELECT * FROM posts LIMIT 10"
Post.unscoped {

not use the previously set scopes.
This method also accepts a block. All queries inside the block will

User.find(1).posts.unscoped # Fires "SELECT * FROM posts"
User.find(1).posts # Fires "SELECT * FROM posts WHERE published = true AND posts.user_id = 1"
Post.where(published: false).unscoped.all # Fires "SELECT * FROM posts"
Post.unscoped.all # Fires "SELECT * FROM posts"
Post.all # Fires "SELECT * FROM posts WHERE published = true"

end
has_many :posts
class User < ActiveRecord::Base

end
end
where(published: true)
def self.default_scope

belongs_to :user
class Post < ActiveRecord::Base

Returns a scope for the model without the previously set scopes.
def unscoped(&block)
  block_given? ? relation.scoping(&block) : relation
end