aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/relation/query_methods.rb
diff options
context:
space:
mode:
authorclaudiob <claudiob@gmail.com>2012-12-07 08:45:45 -0800
committerclaudiob <claudiob@gmail.com>2012-12-07 09:05:33 -0800
commitbb53c60fd04650f1347bd0800658fd4b1152405b (patch)
treed749d146627627bd7143a142453ebea3cf0e58b8 /activerecord/lib/active_record/relation/query_methods.rb
parent27ca9151f107009817d3fa8345e2ccd562d54511 (diff)
downloadrails-bb53c60fd04650f1347bd0800658fd4b1152405b.tar.gz
rails-bb53c60fd04650f1347bd0800658fd4b1152405b.tar.bz2
rails-bb53c60fd04650f1347bd0800658fd4b1152405b.zip
Document the types of arguments accepted by AR#not
This commit stems from https://github.com/rails/rails/pull/8332#issuecomment-11127957 Since the formats in which conditions can be passed to `not` differ from the formats in which conditions can be passed to `like` and `not_like`, then I think it's worth adding rdoc and tests to show this behavior
Diffstat (limited to 'activerecord/lib/active_record/relation/query_methods.rb')
-rw-r--r--activerecord/lib/active_record/relation/query_methods.rb13
1 files changed, 11 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/relation/query_methods.rb b/activerecord/lib/active_record/relation/query_methods.rb
index d3a13c8e2f..9484092430 100644
--- a/activerecord/lib/active_record/relation/query_methods.rb
+++ b/activerecord/lib/active_record/relation/query_methods.rb
@@ -14,6 +14,15 @@ module ActiveRecord
# Returns a new relation expressing WHERE + NOT condition
# according to the conditions in the arguments.
#
+ # #not accepts conditions in one of these formats: String, Array, Hash.
+ # See #where for more details on each format.
+ #
+ # User.where.not("name = 'Jon'")
+ # # SELECT * FROM users WHERE name <> 'Jon'
+ #
+ # User.where.not(["name = ?", "Jon"])
+ # # SELECT * FROM users WHERE name <> 'Jon'
+ #
# User.where.not(name: "Jon")
# # SELECT * FROM users WHERE name <> 'Jon'
#
@@ -40,7 +49,7 @@ module ActiveRecord
end
# Returns a new relation expressing WHERE + LIKE condition
- # according to the conditions in the arguments.
+ # according to the conditions provided as a hash in the arguments.
#
# Book.where.like(title: "Rails%")
# # SELECT * FROM books WHERE title LIKE 'Rails%'
@@ -53,7 +62,7 @@ module ActiveRecord
end
# Returns a new relation expressing WHERE + NOT LIKE condition
- # according to the conditions in the arguments.
+ # according to the conditions provided as a hash in the arguments.
#
# Conference.where.not_like(name: "%Kaigi")
# # SELECT * FROM conferences WHERE name NOT LIKE '%Kaigi'