【问题标题】:setting up a countries table for Rails i18n为 Rails i18n 设置国家/地区表
【发布时间】:2011-09-19 20:55:47
【问题描述】:

在准备将我们的 Rails 应用程序国际化时,我发现我们需要创建一个国家表和模型,其中将包含(除其他外)每个国家/地区的默认语言环境。我找到了一个有 4 年历史的资源 http://snippets.dzone.com/posts/show/1727,其中包含我想要的大部分内容,但没有语言环境。是否每个人都必须手动将这部分拼凑在一起,还是我忽略了将国家/地区映射到默认语言环境的一些更简单的方法。

附:我们已经使用 GeoIpCountry 查找了用户所在的国家/地区,效果很好,但该表仅提供国家名称和 2 个字母的缩写。我还想使用 country 为用户分配默认区域设置、货币和 3 字母缩写(第三方集成需要)

【问题讨论】:

    标签: ruby-on-rails internationalization locale countries


    【解决方案1】:

    识别用户区域设置的最佳方法是查找 HTTP 请求的 Accept-Language 设置。

    例如,我说:Accept-Language: fr-BE

    这为您提供了我的语言环境、我的语言(法语:法语)和我的国家(比利时:比利时)。

    另外,请记住,在许多国家/地区,基于国家/地区的语言环境识别是错误的,例如我的:许多网站正确识别我的国家(比利时)并假定默认语言环境:nl-BE,因为 60% 的比利时人说荷兰语(nl )。因此,这些网站对 40% 的比利时访问者(包括我)来说是错误的。

    他们的网站对我来说是一个糟糕的体验,因为它显示的语言不是我的,我必须做的第一件事就是寻找他们的小语言弹出菜单。

    如果他们只是查看我的Accept-Language,他们就会立即以我的语言向我展示他们的网站。

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 虽然理论上可以回答这个问题,it would be preferable 在这里包含答案的基本部分,并提供链接以供参考。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-07
      • 2020-02-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多