Ruby on rails Rails 3可用的\u语言环境,不包括gem翻译
我有一个Rails 3应用程序,其中我使用I18n.available\u locales来显示用户帐户可用语言的列表。在我的config/locales目录中,我只有en和nl-yml文件,但是,I18n.available\u locales返回各种其他区域设置键,我假设这些键是由于我正在使用的gems中存在翻译而存在的。有没有一种通用/标准的方法可以让该方法只返回应用程序本身中存在的翻译?我建议您使用这个gem:,它为每种语言提供基本翻译,然后用Ruby on rails Rails 3可用的\u语言环境,不包括gem翻译,ruby-on-rails,ruby-on-rails-3,internationalization,Ruby On Rails,Ruby On Rails 3,Internationalization,我有一个Rails 3应用程序,其中我使用I18n.available\u locales来显示用户帐户可用语言的列表。在我的config/locales目录中,我只有en和nl-yml文件,但是,I18n.available\u locales返回各种其他区域设置键,我假设这些键是由于我正在使用的gems中存在翻译而存在的。有没有一种通用/标准的方法可以让该方法只返回应用程序本身中存在的翻译?我建议您使用这个gem:,它为每种语言提供基本翻译,然后用 config.i18n.available
config.i18n.available_locales = ['es-CO', :de]
当然,rails-i18n在这里不是强制性的,您只需在config/application.rb
文件中定义available\u locales
正如在评论中所说的,您肯定应该接受一些答案以提高您的接受率这在Rails 4.2上不起作用。它仍然会返回整个列表。@b1nary:我刚刚在rails 4.2应用程序中试用过,效果很好。我在
config/application.rb
中添加了config.i18n.available\u locales=[:en]
,然后i18n.available\u locales
返回[:en]
当我在rails c
中查看它时,你是否有gems安装了它们自己的语言文件?我不确定我是否理解这个问题,但我不这么认为。我也不知道这和这个问题有什么关系。您使用的其中一个gem可能有问题,但这并不能真正改变这样一个事实,即建议的配置行应该限制可用的\u locales返回的内容