我正在使用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
个对象。
我看了the source for a Translation
然而,看不出我从Translation
和数字生成翻译文本的明显方式。
答案 0 :(得分:1)
你得到翻译,因为你没有向季节[season_name]发送计数,所以R18n返回subhash。只需使用:
s = t.season[season_name, season_count]