首页 > 解决方案 > 我在哪里可以找到不同语言的 Rails 语言环境文件

问题描述

我在哪里可以找到我要添加到我的网站的任何语言的 activerecord 和日期翻译?

标签: ruby-on-railsinternationalization

解决方案


Rails 配备了 I18n框架/API,与大多数此类框架一样,它涉及为每种支持的语言定义一个消息目录。对于 Rails,目录是config/locales.

Rails 为一般的 ActiveRecord 验证消息定义了标准键,但默认情况下只附带英文翻译。自己从头开始提供翻译的另一种方法是安装rails-i18ngem ( svenfuchs/rails-i18n ),它捆绑了许多受支持语言的翻译。这些包括默认的 ActiveRecord 消息和各种其他内容,例如日期和货币格式、星期几等。rails-i18n当然,您可以通过添加自己的语言环境文件来混合和匹配翻译与您自己的自定义翻译。

注意:贡献者rails-i18n做得很好,但并非所有语言环境都有完整的 ActiveRecord 消息集,因此在某些情况下,您必须提供自己的(或考虑向项目提供拉取请求)。

编辑:

随附的预定义目录rails-i18n随 gem 一起安装。运行bundle info rails-i18n会显示本地安装路径;rails/locale如果您愿意,可以使用语言环境文件。Rails 应该更加努力地自动找到这些。因此,在 Rails 控制台中:

foobar> I18n.locale = :tr
=> :tr
foobar> I18n.t 'time.pm'
=> "öğleden sonra"

您可以通过在应用程序config/locales目录中创建自定义语言环境文件来扩展或覆盖默认设置。I18n 搜索路径将config/locales在移动到默认路径之前进行检查,因此您只需在自定义语言环境文件中提供新的或更改的翻译。


推荐阅读