-1

我一直通过在语言环境上调用 to_s 将语言环境转换为字符串。例如I18n.locale.to_swhich 将返回seor de

但现在我注意到 I18n.locale.to_s 返回["se"]["de"]. 它们变成数组了吗?它看起来有点像一个数组的符号。很奇怪,因为我在:[:se].

这发生在我将 Debian 升级到 7 时,将 ruby​​ 升级到 1.9。我的 Rails 版本是 3.2。

有没有办法"se"从语言环境中获取字符串或类似内容?当然,无需手动删除第一个和最后两个字符的明显和丑陋的黑客攻击。

4

1 回答 1

1

这很容易测试。

$ rails c
Loading development environment (Rails 4.0.0)
2.0.0p247 :001 > I18n.locale.class
 => Symbol
于 2013-09-09T12:23:26.363 回答