【问题标题】:Rails 3 available_locales excluding gem translationsRails 3 available_locales 不包括 gem 翻译
【发布时间】:2012-12-22 03:35:16
【问题描述】:

我有一个 Rails 3 应用程序,我在其中使用 I18n.available_locales 显示用户帐户的可用语言列表。在我的 config/locales 目录中,我只有 en 和 nl yml 文件,但是,I18n.available_locales 返回各种其他语言环境键,我假设由于我正在使用的 gem 中存在翻译而存在这些键。是否有一种通用/标准的方法可以让该方法仅返回应用程序本身中存在的翻译?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 internationalization


    【解决方案1】:

    我建议你使用这个 gem:rails-i18n,它为每种语言提供基本的翻译,然后用

    限制可用的语言环境
    config.i18n.available_locales = ['es-CO', :de]
    

    当然,rails-i18n 在这里不是必须的,你可以简单地在你的config/application.rb 文件中定义available_locales

    正如 cmets 中所说,您绝对应该接受一些答案以提高您的接受率

    【讨论】:

    • 这不适用于 Rails 4.2。它仍然返回整个列表。
    • @b1nary:我刚刚在我的 rails 4.2 应用程序中尝试过,它成功了。我在config/application.rb 中添加了config.i18n.available_locales = [:en],然后I18n.available_localesrails c 中查看时返回[:en]
    • 您是否安装了带有自己的语言文件的 gem?
    • 我不确定我是否理解这个问题,但我不这么认为。我也真的不明白这与这个问题有什么关系。您正在使用的其中一个 gem 可能存在问题,但这并没有真正改变建议的配置行应该可以限制 available_locales 返回的事实
    猜你喜欢
    • 2011-05-19
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 2020-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多