【问题标题】:Rails I18n not replacing variableRails I18n 不替换变量
【发布时间】:2015-05-08 00:21:57
【问题描述】:

我遇到了一些问题,我的一些翻译没有用我提供的文本替换它们的变量替换,而是直接输出翻译。

示例翻译

formats:
   view_all_other: "View all other %{format_title}"

使用示例(HAML)

= link_to t('formats.view_all_other', format_title: @format.title.downcase), "/#{@format.to_param}/all"

输出什么

我一直在网上搜索,但我还没有看到有人遇到这个问题。这是我第一次使用 i18n,但看起来我没有设置错误,其他翻译工作正常(包括带有变量替换的翻译)。

【问题讨论】:

    标签: ruby-on-rails internationalization i18n-gem


    【解决方案1】:

    facepalm 我在另一个翻译中遇到了问题,我最初将变量称为“格式”,我怀疑它可能是保留字或类似的东西,所以我更改了所有翻译以使用format_title 并忘记更新视图。

    【讨论】:

      【解决方案2】:

      您的翻译应该在语言层次结构中。让我们看看en.yml,那么翻译应该是这样的:

      en:
        formats:
         view_all_other: "View all other %{format_title}"
      

      【讨论】:

      • 就是这样,为了简洁,我只是省略了 en:。其他翻译(包括带有变量的翻译),但这个没有。
      • 你能试试,在相同格式层次结构下的一些其他变量,并检查它是否有效?
      • formats 下还有另一种翻译,变量可以正常工作。
      猜你喜欢
      • 1970-01-01
      • 2017-11-11
      • 2013-06-10
      • 1970-01-01
      • 1970-01-01
      • 2018-11-22
      • 1970-01-01
      • 2014-07-28
      • 1970-01-01
      相关资源
      最近更新 更多