【问题标题】:I18n.t falls back to key instead to default localeI18n.t 回退到 key 而不是默认语言环境
【发布时间】:2021-01-03 19:58:41
【问题描述】:

在我的前端,未翻译的字符串被替换为其键的单词形式,而不是基本语言的翻译。

这意味着将语言环境更改为 :en 或 :tr 都会显示 t('activerecord.misc.badge.summaries_header')Summaries Header,而不是来自德语语言环境的 Auswertungen。所以它显然是从密钥的最后一部分构建的。 摘要标题在任何语言环境中都不会显示为标签。

:en/:tr 中的其他翻译字符串显示正确。

# config/application.rb

config.i18n.default_locale = :de
config.i18n.available_locales = [
  :de, # Deutsch
  :pt, # Portugiesisch
  :en, # Englisch
  :tr, # Türkisch
]
config.i18n.fallbacks = true
# Versions
ruby 2.7.2
rails 5.2.4.4
i18n 1.8.6
rails-i18n 5.1.3

我找不到导致这种行为的原因,也无法确定是哪个更新在什么时候破坏了这种行为。

我该如何解决这个问题?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-5 rails-i18n


    【解决方案1】:

    TL;DR:使用bundle update i18n更新到 i18n v1.8.7 或更高版本

    i18n v1.8.6 在从 config.i18n.* 回退到 Thread 变量时出现问题。

    i18n issue #546changelog for v1.8.7

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-05
      • 1970-01-01
      相关资源
      最近更新 更多