活动记录错误-转换为其他语言环境

时间:2018-07-12 20:44:28

标签: ruby-on-rails activerecord

我正在开发一个国际化的应用程序,有时我需要使用不是我的默认语言的消息,例如:

I18n.t("my_message.some_attribute", :locale => :ptBR)

问题是:我有一个用于创建和激活记录对象的API方法,并且我想呈现方法full_messages的错误消息,如下所示:

my_object.errors.full_messages.uniq.to_sentence

问题是,在这种情况下,我收到有关默认语言的消息。我怎么能用另一种语言得到那句话? 谢谢!

1 个答案:

答案 0 :(得分:0)

得到我的答案...由于语言是我的api的一种参数,因此在我的应用控制器中,我将语言环境设置为before_action:

  before_action :set_locale

  def set_locale
    I18n.locale =  params[:lang] || "en"
  end

这对我有用