From 6e5ab6fccb55727ef2e32c30a77a48c595316cae Mon Sep 17 00:00:00 2001 From: Carlos Antonio da Silva Date: Sat, 9 Mar 2013 19:20:48 -0300 Subject: Change uniq validation with conditions examples to use where with hashes Take the opportunity to showcase where.not. --- activerecord/lib/active_record/validations/uniqueness.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'activerecord/lib') diff --git a/activerecord/lib/active_record/validations/uniqueness.rb b/activerecord/lib/active_record/validations/uniqueness.rb index bf2aa2e959..a705d8c2c4 100644 --- a/activerecord/lib/active_record/validations/uniqueness.rb +++ b/activerecord/lib/active_record/validations/uniqueness.rb @@ -4,7 +4,7 @@ module ActiveRecord def initialize(options) if options[:conditions] && !options[:conditions].respond_to?(:call) raise ArgumentError, "#{options[:conditions]} was passed as :conditions but is not callable. " \ - "Pass a callable instead: `conditions: -> { where('approved = ?', true) }`" + "Pass a callable instead: `conditions: -> { where(approved: true) }`" end super({ case_sensitive: true }.merge!(options)) end @@ -120,7 +120,7 @@ module ActiveRecord # of the title attribute: # # class Article < ActiveRecord::Base - # validates_uniqueness_of :title, conditions: -> { where('status != ?', 'archived') } + # validates_uniqueness_of :title, conditions: -> { where.not(status: 'archived') } # end # # When the record is created, a check is performed to make sure that no @@ -136,7 +136,7 @@ module ActiveRecord # the uniqueness constraint. # * :conditions - Specify the conditions to be included as a # WHERE SQL fragment to limit the uniqueness constraint lookup - # (e.g. conditions: -> { where('status = ?', 'active') }). + # (e.g. conditions: -> { where(status: 'active') }). # * :case_sensitive - Looks for an exact match. Ignored by # non-text columns (+true+ by default). # * :allow_nil - If set to +true+, skips this validation if the -- cgit v1.2.3