【问题标题】:Rails 3: i18n locale doesn't change on production environmentRails 3:i18n 语言环境不会在生产环境中改变
【发布时间】:2012-03-15 13:41:41
【问题描述】:

我一直在寻找几个小时来将我的应用程序在“生产环境”上国际化。

在开发环境中一切正常。

这是我的代码:

在视图中

        <li><%= link_to "العربية", :locale=>'ar' %></li>
        <li><%= link_to "English", :locale=>'en' %></li>

在 application_controller.rb 中

  def set_locale
I18n.locale = params[:locale]
I18n.default_locale = params[:locale] end

我正在使用 rails v3.2.1,gem v1.8.17。

【问题讨论】:

  • 这里到底出了什么问题?您的特定生产环境文件中是否存在与开发环境文件显着不同的内容?
  • 您能告诉我们点击任一链接时会发生什么吗?
  • @JoePym ,它们是相同的。我只是将代码推送到heroku。
  • @amencarini,它说翻译丢失(Login)

标签: ruby-on-rails internationalization locale


【解决方案1】:

在视图中:

I18n.available_locales.each do |locale|
  = link_to I18n.name_for_locale(locale), url_for( :locale => locale )
  &nbsp;

在 application_controller.rb 中

def set_locale
  I18n.locale = params[:locale] || I18n.default_locale
end

【讨论】:

    猜你喜欢
    • 2012-12-13
    • 1970-01-01
    • 2012-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多