我希望能够将区域代码与特定语言名称匹配。I18n/Rails中是否有任何内置函数可返回相应区域代码的语言名称?是否只有安装gem才是唯一的方法?
我希望能够将区域代码与特定语言名称匹配。I18n/Rails中是否有任何内置函数可返回相应区域代码的语言名称?是否只有安装gem才是唯一的方法?
I18n 中似乎没有这方面的方法。 如果你只需要当前语言名称,你可以轻松地将其包含在相应的区域设置文件中:
# config/locales/en.yml
en:
language_name: "English"
像往常一样获取它:I18n.t('language_name')
或 I18n.t('language_name', locale: :en)
。
对于一般用途,您可以使用:https://github.com/hexorx/countries或初始化自己的映射作为Ruby哈希:{ en: 'English', ... }
。
de.yml
应该有德语内容,即 language_name: "Deutsch"
,对吗? - Stefanlanguages.en.yml
的文件包含en: { languages: { en: 'English', de: 'German' } }
,另一个名为languages.de.yml
的文件包含de: { languages: { en: 'Englisch', de: 'Deutsch' } }
等等。 - Stefan
"en"
映射到"英语"
,"fr"
映射到"法语"
等的方法吗? - Tom Lord