module I18n
A simple exception handler that behaves like the default exception handler but additionally logs missing translations to a given log.
Useful for identifying missing translations during testing.
E.g.
require 'globalize/i18n/missing_translations_log_handler' I18n.missing_translations_logger = RAILS_DEFAULT_LOGGER I18n.exception_handler = :missing_translations_log_handler
To set up a different log file:
logger = Logger.new("#{RAILS_ROOT}/log/missing_translations.log") I18n.missing_translations_logger = logger
A simple exception handler that behaves like the default exception handler but also raises on missing translations.
Useful for identifying missing translations during testing.
E.g.
require 'globalize/i18n/missing_translations_raise_handler' I18n.exception_handler = :missing_translations_raise_handler
Public Class Methods
missing_translations_log_handler(exception, locale, key, options)
click to toggle source
# File lib/i18n/missing_translations_log_handler.rb, line 32 def missing_translations_log_handler(exception, locale, key, options) if MissingTranslationData === exception missing_translations_logger.warn(exception.message) return exception.message else raise exception end end
missing_translations_logger()
click to toggle source
# File lib/i18n/missing_translations_log_handler.rb, line 21 def missing_translations_logger @@missing_translations_logger ||= begin require 'logger' unless defined?(Logger) Logger.new(STDOUT) end end
missing_translations_logger=(logger)
click to toggle source
# File lib/i18n/missing_translations_log_handler.rb, line 28 def missing_translations_logger=(logger) @@missing_translations_logger = logger end
missing_translations_raise_handler(exception, locale, key, options)
click to toggle source
# File lib/i18n/missing_translations_raise_handler.rb, line 12 def missing_translations_raise_handler(exception, locale, key, options) raise exception end