aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/lib
diff options
context:
space:
mode:
authorJean Boussier <jean.boussier@gmail.com>2019-06-14 13:25:16 +0200
committerJean Boussier <jean.boussier@gmail.com>2019-06-14 14:07:28 +0200
commit5d4a77d324fa30c616d0e05144edc57f10cfb9b5 (patch)
tree088c66820cd4d8868e2d6fac05449663be75ff1d /actionview/lib
parent2c3332cc4c0fa77dbe2e13e8a792f80fbd8f4ad3 (diff)
downloadrails-5d4a77d324fa30c616d0e05144edc57f10cfb9b5.tar.gz
rails-5d4a77d324fa30c616d0e05144edc57f10cfb9b5.tar.bz2
rails-5d4a77d324fa30c616d0e05144edc57f10cfb9b5.zip
Fix TranslationHelper#translate handling of Hash defaults
It is sometimes expected of the `translate` methods to return a Hash, for instance it's the case of the `number.format` key. As such users might need to specify a Hash default, e.g. `translate(:'some.format', default: { separator: '.', delimiter: ',' })`. This works as expected with the `I18n.translate` methods, however `TranslationHelper#translate` apply `Array()` on the default value. As a result the default value end up as `[:separator, '.', :delimiter, ',']`.
Diffstat (limited to 'actionview/lib')
-rw-r--r--actionview/lib/action_view/helpers/translation_helper.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/actionview/lib/action_view/helpers/translation_helper.rb b/actionview/lib/action_view/helpers/translation_helper.rb
index d5b0a9263f..baa337c62f 100644
--- a/actionview/lib/action_view/helpers/translation_helper.rb
+++ b/actionview/lib/action_view/helpers/translation_helper.rb
@@ -60,7 +60,7 @@ module ActionView
def translate(key, options = {})
options = options.dup
if options.has_key?(:default)
- remaining_defaults = Array(options.delete(:default)).compact
+ remaining_defaults = Array.wrap(options.delete(:default)).compact
options[:default] = remaining_defaults unless remaining_defaults.first.kind_of?(Symbol)
end