RAILS - 如何在使用 ISO3166::Country 时修复 I18n NoTranslationAvailable
RAILS - How to fix I18n NoTranslationAvailable when using ISO3166::Country
我在项目中使用 https://rubygems.org/gems/countries 并尝试使用语言环境字符串获取所有国家/地区的名称进行翻译。
区域设置 'DE'
、'NO'
或其他来自 Google OCR API。 gem 还有一个方法:ISO3166::Country.translations
,它将 return 所有 语言环境字符串和匹配的国家,如:"AL"=>"Albania"
.
在这个列表中,也有特色翻译"NO"=>"Norway"
,但是当使用ISO3166::Country.all_translated('NO')
时,会抛出一个错误:I18nData::NoTranslationAvailable: I18nData::NoTranslationAvailable -- countries-NO
.
是否有任何解决方法或修复方法来使用所有语言并获得所有翻译?或者至少挪威怎么不在当地? gem 我认为使用了错误中提到的 I18n,并且 :no
语言环境在 I18n 中无效:
I18n.locale = :no => I18n::InvalidLocale: :no is not a valid locale
I18n.locale = :de => :de
挪威 i18n 区域设置是 :nn
(Nynorsk) and :nb
(Bokmål),而不是 :no
。
i18n 使用 countries-NN.txt
and countries-NB.txt
所以需要使用ISO3166::Country.all_translated('NN')
和ISO3166::Country.all_translated('NB')
我在项目中使用 https://rubygems.org/gems/countries 并尝试使用语言环境字符串获取所有国家/地区的名称进行翻译。
区域设置 'DE'
、'NO'
或其他来自 Google OCR API。 gem 还有一个方法:ISO3166::Country.translations
,它将 return 所有 语言环境字符串和匹配的国家,如:"AL"=>"Albania"
.
在这个列表中,也有特色翻译"NO"=>"Norway"
,但是当使用ISO3166::Country.all_translated('NO')
时,会抛出一个错误:I18nData::NoTranslationAvailable: I18nData::NoTranslationAvailable -- countries-NO
.
是否有任何解决方法或修复方法来使用所有语言并获得所有翻译?或者至少挪威怎么不在当地? gem 我认为使用了错误中提到的 I18n,并且 :no
语言环境在 I18n 中无效:
I18n.locale = :no => I18n::InvalidLocale: :no is not a valid locale
I18n.locale = :de => :de
挪威 i18n 区域设置是 :nn
(Nynorsk) and :nb
(Bokmål),而不是 :no
。
i18n 使用 countries-NN.txt
and countries-NB.txt
所以需要使用ISO3166::Country.all_translated('NN')
和ISO3166::Country.all_translated('NB')