Rails: 为特定路径设置语言环境

Rails: set locale for a specific path

我想为特定路径指定语言环境。

在我的整个应用程序中,我将默认的本地 e 设置为 :es

 config.i18n.default_locale = :es

整个应用程序以正常方式工作,我想知道如何为一组路径指定特定的语言环境...

我集成了一个名为 maily_herald 的第三方应用程序,为了使其路径可用于我的应用程序,我必须将此行添加到我的 routes.rb 文件

mount MailyHerald::Webui::Engine => "/maily_webui"

问题是 locale:es 没有翻译,所以它不能正常工作...我想让 /maily_webui 下的所有路径都有 locale:en 所以第三方应用程序将以英语工作,而我的应用程序仍将以 :es

工作

知道怎么做吗?

class ApplicationController < ActionController::Base
  .....
  before_filter :set_locale


  def set_locale
    if request.fullpath == "some_path"
      I18n.locale = :some_locale
    else
      I18n.locale = params[:locale] || I18n.default_locale
    end
  end

end