0

我正在Sinatra使用国际化系统开发一个基于网络的应用程序Sinatra r18n

我的./i18n/en.yml r18n翻译文件包含以下内容:

season:
  summer:  !!pl
    0: no Summers
    1: one Summer
    n: "%1 Summers"
  autumn: !!pl
    0: no Autumns
    1: one Autumn
    n: "%1 Autumns"
  winter: !!pl
    0: no Winters
    1: one Winter
    n: "%1 Winters"
  spring: !!pl
    0: no Springs
    1: one Spring
    n: "%1 Springs"

在我的代码中,我可以轻松访问"Total: #{t.season.summer season_count}.",但在尝试以编程方式访问我的季节名称时遇到了麻烦。

s = t.season[season_name]返回一个Translation对象。

但是,我查看了 a 的来源,Translation但看不到我从中生成翻译文本Translation和数字的明显方式。

4

1 回答 1

1

你得到了翻译,因为你没有将 count 发送到 season[season_name],所以 R18n 返回 subhash。只需使用:

s = t.season[season_name, season_count]
于 2012-09-25T09:40:06.817 回答