ruby-on-rails – 如何在Rails中使用控制器中的I18n

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何在Rails中使用控制器中的I18n前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个PetsController,其中设置了flash消息.像这样的东西:
class PetsController

  ...

  def treat_dog
    #do somthing
    flash[:success] = 'Your dog is being treated.'
  end

  ...

end

此控制器属于Admin,因此它位于:app / controllers / admin / pets_controller.rb.我将使用I18n,所以我用t(‘controllers.admin.pet.treated’)替换了控制器中的字符串,然后,我写了这个yml:

en:
  controllers:
    admin:
      pet:
        treated: "Your dog is being treated."

位于:config / locales / controllers / admin / pet / en.yml,它不起作用.我试图在config / locales / controllers / admin / pets / en.yml,config / locales / controllers / admin / en.yml中找到它.
配置/语言环境/控制器/ en.yml
并且没有一个工作,没有找到翻译.

如何使用此控制器的翻译?

解决方法

在控制器中你可以像这样使用它
I18n.t 'controllers.admin.pet.treated'

猜你在找的Ruby相关文章