Страницы

Поиск по вопросам

понедельник, 3 июня 2019 г.

Rails - yml файл для всех языков

Я переводил свое Rails-приложение и столкнулся со следуюшей проблемой. Не все элементы надо переводить. Например, в en.yml у меня хранятся не только фразы, но и ссылки. Переводить их не имеет смысла, но если их не включасть, например, в ru.yml, то будет ошибка translation_missing.
@MichaelRadionov посоветовал использовать наследование.
Соответственно, вопрос: Как использовать наследование в YML файлах


Ответ

Использовать наследование не нужно. Эта функция уже включена в гем rails-i18n. Для того что-бы все работало, нужно отредактировать файл application.rb
# Автозагрузка всех языковых файлов config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
# Дефолтовый язык config.i18n.default_locale = :ru
# Возврат к английскому при ошибках config.i18n.fallbacks = [:en]
# Так же можно указывать какой язык использовать при ошибках config.i18n.fallbacks = {'ru' => 'en'}

Комментариев нет:

Отправить комментарий