diff --git a/activesupport/lib/active_support/cache.rb b/activesupport/lib/active_support/cache.rb index 0a35f69072c37f04addd0305013b52f24a869e34..d3b7f7395d799a0a0383d86e0148ad197b56e6a9 100644 --- a/activesupport/lib/active_support/cache.rb +++ b/activesupport/lib/active_support/cache.rb @@ -681,15 +681,15 @@ def expanded_key(key) case key when Array if key.size > 1 - key = key.collect { |element| expanded_key(element) } + key.collect { |element| expanded_key(element) } else - key = expanded_key(key.first) + expanded_key(key.first) end when Hash - key = key.sort_by { |k, _| k.to_s }.collect { |k, v| "#{k}=#{v}" } - end - - key.to_param + key.collect { |k, v| "#{k}=#{v}" }.sort + else + key + end.to_param end def normalize_version(key, options = nil)