Как использовать ключ i18n в качестве перевода по умолчанию в Rails 3?
Например:
I18n.t('something')
должен выводиться только
something
если перевод отсутствует.
Ответ 1
нет, это невозможно. Если вы используете I18, вам нужно иметь файл, соответствующий языку, иначе I18n будет жаловаться.
Конечно, вы можете установить язык по умолчанию в файле environment.rb. Должно быть около дна, и вы можете установить его для любого языка, который вам нужен, но в вашей папке locales/ вам понадобится соответствующий перевод yml.
На рельсах 4 вы можете изменить обработчик исключений.
Добавьте в config/initializers/i18n.rb следующее:
module I18n
class MissingTranslationExceptionHandler < ExceptionHandler
def call(exception, locale, key, options)
if exception.is_a?(MissingTranslation)
key
else
super
end
end
end
end
I18n.exception_handler = I18n::MissingTranslationExceptionHandler.new