我正在开发一个国际化的应用程序,有时我需要使用不是我的默认语言的消息,例如:
I18n.t("my_message.some_attribute", :locale => :ptBR)
问题是:我有一个用于创建和激活记录对象的API方法,并且我想呈现方法full_messages
的错误消息,如下所示:
my_object.errors.full_messages.uniq.to_sentence
问题是,在这种情况下,我收到有关默认语言的消息。我怎么能用另一种语言得到那句话? 谢谢!
答案 0 :(得分:0)
得到我的答案...由于语言是我的api的一种参数,因此在我的应用控制器中,我将语言环境设置为before_action:
before_action :set_locale
def set_locale
I18n.locale = params[:lang] || "en"
end
这对我有用