我在Redis商店使用I18n,在更新到Rails 3.2.13之后有一个奇怪的行为
[6] pry(main)> I18n.t("my_website_field")
=> "M"
[7] pry(main)> $redis.get("en.my_website_field")
=> "\"My website\""
我只收到翻译的第一个字母
答案 0 :(得分:1)
据我所知,我认为redis-store在某些版本的Rails中存在问题(3.2.13恰好是其中之一)。
由于我真的很好奇为什么会这样,我打开了Github更改日志并查看了他们在3.2.12中更改的逻辑 - > 3.2.13更新。
我注意到的主要变化是ActiveSupport for i18n中的依赖链。 代码已更改 FROM
s.add_dependency('i18n', '~> 0.6')
以强>
s.add_dependency('i18n', '= 0.6.1')
唯一的其他变化是(来自更改日志):
将i18n范围添加到`distance_of_time_in_words
因此,如果我不得不采取有根据的猜测,我会说强制使用i18n到0.6.1会与redis-store产生某种冲突。
注意: 如果我有关于此主题的更多信息,我将继续查看更改日志到i18n的问题并发布。 无法在提交历史记录中找到具体问题而且他们没有保留更改日志(没有3年:/)但我很想知道强制旧版本控制是否允许i18n正常运行。