module I18n::MissingTranslation::Base

Constants

PERMITTED_KEYS

Attributes

Public Class Methods

# File lib/i18n/exceptions.rb, line 54
def initialize(locale, key, options = EMPTY_HASH)
  @key, @locale, @options = key, locale, options.slice(*PERMITTED_KEYS)
  options.each { |k, v| self.options[k] = v.inspect if v.is_a?(Proc) }
end

Public Instance Methods

# File lib/i18n/exceptions.rb, line 59
def keys
  @keys ||= I18n.normalize_keys(locale, key, options[:scope]).tap do |keys|
    keys << 'no key' if keys.size < 2
  end
end
# File lib/i18n/exceptions.rb, line 65
def message
  if (default = options[:default]).is_a?(Array) && default.any?
    other_options = ([key, *default]).map { |k| normalized_option(k).prepend('- ') }.join("\n")
    "Translation missing. Options considered were:\n#{other_options}"
  else
    "Translation missing: #{keys.join('.')}"
  end
end
Also aliased as: to_s
# File lib/i18n/exceptions.rb, line 74
def normalized_option(key)
  I18n.normalize_keys(locale, key, options[:scope]).join('.')
end
# File lib/i18n/exceptions.rb, line 80
def to_exception
  MissingTranslationData.new(locale, key, options)
end
Alias for: message