diff options
author | Yves Senn <yves.senn@gmail.com> | 2014-03-05 10:24:13 +0100 |
---|---|---|
committer | Yves Senn <yves.senn@gmail.com> | 2014-03-05 10:24:13 +0100 |
commit | f6aeb8b1a3687c8523e4a56309fe3736011b2935 (patch) | |
tree | 6e13a931827f71bb89d4522279aacb99793736c1 /activerecord/lib/active_record | |
parent | 8d486c63d63eeb503fd18be615d5dd26dfa34fb5 (diff) | |
download | rails-f6aeb8b1a3687c8523e4a56309fe3736011b2935.tar.gz rails-f6aeb8b1a3687c8523e4a56309fe3736011b2935.tar.bz2 rails-f6aeb8b1a3687c8523e4a56309fe3736011b2935.zip |
we only need to support `asc` and `ASC`. No need for mixed cases. #14263
This is a result of the discussion at https://github.com/rails/rails/pull/14263/files#r10291489
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r-- | activerecord/lib/active_record/relation/query_methods.rb | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/activerecord/lib/active_record/relation/query_methods.rb b/activerecord/lib/active_record/relation/query_methods.rb index a22849f4a6..f694a901f4 100644 --- a/activerecord/lib/active_record/relation/query_methods.rb +++ b/activerecord/lib/active_record/relation/query_methods.rb @@ -275,15 +275,6 @@ module ActiveRecord # Allows to specify an order attribute: # - # User.order('name') - # => SELECT "users".* FROM "users" ORDER BY name - # - # User.order('name DESC') - # => SELECT "users".* FROM "users" ORDER BY name DESC - # - # User.order('name DESC, email') - # => SELECT "users".* FROM "users" ORDER BY name DESC, email - # # User.order(:name) # => SELECT "users".* FROM "users" ORDER BY "users"."name" ASC # @@ -292,6 +283,15 @@ module ActiveRecord # # User.order(:name, email: :desc) # => SELECT "users".* FROM "users" ORDER BY "users"."name" ASC, "users"."email" DESC + # + # User.order('name') + # => SELECT "users".* FROM "users" ORDER BY name + # + # User.order('name DESC') + # => SELECT "users".* FROM "users" ORDER BY name DESC + # + # User.order('name DESC, email') + # => SELECT "users".* FROM "users" ORDER BY name DESC, email def order(*args) check_if_method_has_arguments!(:order, args) spawn.order!(*args) @@ -1030,13 +1030,14 @@ module ActiveRecord arel.order(*orders) unless orders.empty? end - VALID_DIRECTIONS = [:asc, :desc, 'asc', 'desc'] # :nodoc: + VALID_DIRECTIONS = [:asc, :desc, :ASC, :DESC, + 'asc', 'desc', 'ASC', 'DESC'] # :nodoc: def validate_order_args(args) args.grep(Hash) do |h| - h.values.map(&:downcase).each do |value| - raise ArgumentError, "Direction '#{value}' is invalid. Valid " \ - "directions are asc and desc." unless VALID_DIRECTIONS.include?(value) + h.values.each do |value| + raise ArgumentError, "Direction \"#{value}\" is invalid. Valid " \ + "directions are: #{VALID_DIRECTIONS.inspect}" unless VALID_DIRECTIONS.include?(value) end end end |