首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

rails - 如何动态添加/覆盖对i18n yaml的措辞

在 Rails 应用中,动态添加/覆盖对 i18n yaml 的措辞可以通过以下方法实现:

  1. config/locales 目录下创建一个新的 YAML 文件,例如 dynamic.en.yml,并添加需要动态添加/覆盖的翻译内容。
代码语言:yaml
复制
en:
  dynamic:
    key1: "Dynamic translation 1"
    key2: "Dynamic translation 2"
  1. config/application.rb 文件中添加新创建的 YAML 文件到 config.i18n.load_path 数组中。
代码语言:ruby
复制
config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')]
  1. 在需要使用动态翻译的地方,使用 I18n.t 方法获取翻译内容。
代码语言:ruby
复制
I18n.t('dynamic.key1')
  1. 如果需要动态覆盖已有的翻译内容,可以在 config/initializers/i18n.rb 文件中添加以下代码:
代码语言:ruby
复制
I18n.backend.store_translations(:en, {
  existing: {
    key1: "Overridden translation 1",
    key2: "Overridden translation 2"
  }
})

这样就可以动态添加/覆盖对 i18n yaml 的措辞了。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券