ruby-on-rails - Rails i18n - 如何获取 key 的所有翻译

标签 ruby-on-rails internationalization

我的翻译按正常方式组织:

en:
  foo:
    bar: 'hello friend'
es:
  foo:
    bar: 'hola amigo'

我需要返回给定键的所有翻译的散列,将语言作为散列的键,如下所示:
# translations for foo.bar
{
  en: 'hello friend',
  es: 'hola amigo'
}

我怎样才能从 i18n 引擎中提取它?

最佳答案

回答我自己的问题,以防有人感兴趣。可能不是解决问题的最有效方法,但这样做:

Hash[
  I18n.available_locales.map{|locale|
    [locale, I18n.translate('foo.bar', default: '', locale: locale)]
  }
]

关于ruby-on-rails - Rails i18n - 如何获取 key 的所有翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41490749/

相关文章:

ruby-on-rails - 在 Rails 中,是否可以修复模型内部的模型验证错误?

ruby-on-rails - Rails carmen-rails gem,通过分区代码查找分区名称

ruby-on-rails - 如何在Rails4中使用Carrierwave在Blob中保存base64图像?

ruby-on-rails - 如何使用 ActionView::Base 将 Rails 辅助方法传递给 View ?

java - 如何使用 Apache FOP 1.0 从包含日语字符的 XML 创建 PCL 文档?

ruby-on-rails - 将多个用户添加到单个记录中 Rails 5

entity-framework - Entity Framework 中的内容国际化

html - 标签文件上传按钮

没有路径前缀的 Django i18n 默认语言

angular - 我可以使用 Angular i18n 来翻译 typescript 代码中的字符串文字吗