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

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何在Rails中使用控制器中的I18n前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个PetsController,其中设置了flash消息.像这样的东西:
  1. class PetsController
  2.  
  3. ...
  4.  
  5. def treat_dog
  6. #do somthing
  7. flash[:success] = 'Your dog is being treated.'
  8. end
  9.  
  10. ...
  11.  
  12. end

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

  1. en:
  2. controllers:
  3. admin:
  4. pet:
  5. 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
并且没有一个工作,没有找到翻译.

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

解决方法

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

猜你在找的Ruby相关文章