提交 d5b0ba66 编写于 作者: D David Heinemeier Hansson

Make I18n::Backend::Simple reload its translations in development mode [DHH]

上级 a61c4dfa
*2.2.1 [RC2 or 2.2 final]*
* Make I18n::Backend::Simple reload its translations in development mode [DHH]
*2.2.0 [RC1] (October 24th, 2008)*
* TimeWithZone#freeze: preload instance variables so that we can actually freeze [Geoff Buesing]
......
......@@ -6,6 +6,10 @@ class Simple
INTERPOLATION_RESERVED_KEYS = %w(scope default)
MATCH = /(\\\\)?\{\{([^\}]+)\}\}/
def initialize
Dispatcher.to_prepare { reload }
end
# Accepts a list of paths to translation files. Loads translations from
# plain Ruby (*.rb) or YAML files (*.yml). See #load_rb and #load_yml
# for details.
......@@ -69,8 +73,11 @@ def initialized?
@initialized ||= false
end
protected
def reload
@initialized = false
end
protected
def init_translations
load_translations(*I18n.load_path)
@initialized = true
......@@ -88,7 +95,7 @@ def translations
def lookup(locale, key, scope = [])
return unless key
init_translations unless initialized?
keys = I18n.send :normalize_translation_keys, locale, key, scope
keys = I18n.send(:normalize_translation_keys, locale, key, scope)
keys.inject(translations) do |result, k|
if (x = result[k.to_sym]).nil?
return nil
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册