我在my_message
中有一条名为config/locales/post.en.yml
的邮件,如下所示:
en:
post:
show:
my_message: "Post was successfully saved. And Boom!"
如何调用此方法:my_message用于控制器方法中的闪存?
class PostsController < ApplicationController
def show
flash[:error] = my_message
end
end
答案 0 :(得分:2)
尝试I18n.t
帮助
flash[:error] = t('.my_message')
或者,如果这不起作用,请使用完整路径:
flash[:error] = t('post.show.my_message')
答案 1 :(得分:1)
在应用程序控制器rails 4中,在参数中发送您的语言环境,以便通过params [:locale]
在contoller中获取它 before_action :set_locale
def set_locale
I18n.locale = params[:locale] || I18n.default_locale
end
然后
flash[:error] = t('post.show.my_message')