Permalink
Browse files

Improve doc for ActiveRecord::Base.unscoped.

  • Loading branch information...
1 parent 51e8adb commit e149d5059b420449ab010f7d0596b1cb84725df1 @htanata htanata committed with vijaydev Dec 18, 2011
Showing with 8 additions and 6 deletions.
  1. +8 −6 activerecord/lib/active_record/scoping/default.rb
@@ -12,7 +12,7 @@ module Default
end
module ClassMethods
- # Returns a scope for this class without taking into account the default_scope.
+ # Returns a scope for the model without the default_scope.
#
# class Post < ActiveRecord::Base
# def self.default_scope
@@ -23,18 +23,20 @@ module ClassMethods
# Post.all # Fires "SELECT * FROM posts WHERE published = true"
# Post.unscoped.all # Fires "SELECT * FROM posts"
#
- # This method also accepts a block meaning that all queries inside the block will
+ # This method also accepts a block. All queries inside the block will
# not use the default_scope:
#
# Post.unscoped {
# Post.limit(10) # Fires "SELECT * FROM posts LIMIT 10"
# }
#
- # It is recommended to use block form of unscoped because chaining unscoped with <tt>scope</tt>
- # does not work. Assuming that <tt>published</tt> is a <tt>scope</tt> following two statements are same.
+ # It is recommended to use the block form of unscoped because chaining
+ # unscoped with <tt>scope</tt> does not work. Assuming that
+ # <tt>published</tt> is a <tt>scope</tt>, the following two statements
+ # are equal: the default_scope is applied on both.
#
- # Post.unscoped.published
- # Post.published
+ # Post.unscoped.published
+ # Post.published
def unscoped #:nodoc:
block_given? ? relation.scoping { yield } : relation
end

0 comments on commit e149d50

Please sign in to comment.