Файл локали Rails не загружается - PullRequest
3 голосов
/ 12 марта 2012

Я перевожу свой сайт на английский и французский. В моем каталоге config / locales много файлов локали, организованных в подпапки.

Все мои файлы загружаются правильно, кроме одного, и я просто не знаю почему.

Вот содержимое моего файла:

fr:
  categories:
    index:
      page_title: "Toutes les catégories"
      page_description: "Liste de toutes les catégories de tutoriels."

В представлении индекса контроллера моей категории у меня есть следующий вызов:

%h1= t('.page_title')

И я продолжаю получать

перевод отсутствует: fr.categories.index.page_title

Есть ли у вас какие-либо подсказки по этому вопросу?


Хорошо, наконец-то нашел проблему.

У меня есть следующее в другом файле:

fr:
  categories: "Catégories"

Этот ключ конфликтовал с другим в моем другом файле, поэтому не удалось найти дополнительные ключи.

Ответы [ 2 ]

2 голосов
/ 26 апреля 2017

Если кто-то пытается загрузить все файлы в подпапках locale, вы можете просто добавить следующую строку в application.rb:

config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**/*.{rb,yml}').to_s]

Хорошо сработало для меня на Rails 5.0.2.

0 голосов
/ 12 марта 2012

Я думаю, это связано с вашей организацией в подпапках. Я вижу в моем заявлении .rb # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.

Вам нужно либо прекратить использование подпапок, либо изменить config.i18n.load_path, чтобы он рекурсивно просматривал локали / * / .rb, yml

...