Rails:有没有办法将名称与每个语言环境相关联?

时间:2016-07-21 12:19:12

标签: ruby-on-rails ruby internationalization locale rails-i18n

目前我有两种语言:英语和希腊语(:en& el)。

我正在使用globalize gem。

有没有办法让我把它们放在循环中,然后提取每种语言的名称?

例如,有如下内容:

I18n.locale.Name_of_the_locale

如果是,我在哪里声明/更改它?

1 个答案:

答案 0 :(得分:3)

一种解决方案是在:language_nameen.yml内创建gr.yml密钥:

en:
  language_name: English

gr:
  language_name: Greek

然后只需致电I18n.t('language_name')。如果您需要同时拥有它们,您仍然可以遍历所有可用的语言环境:

I18n.available_locales.map { |locale| I18n.t('language_name', locale: locale) }