0

Railsアプリを国際化する準備として、各国のデフォルトロケールを(とりわけ)含む国のテーブルとモデルを作成する必要があることがわかりました。4年前のリソースhttp://snippets.dzone.com/posts/show/1727を見つけました。これには、必要なもののほとんどが含まれていますが、ロケールは含まれていません。誰もがこの部分を手作業でつなぎ合わせる必要がありますか、それとも国をデフォルトのロケールにマップする簡単な方法を見落としていますか?

PSすでにGeoIpCountryを使用してユーザーの国を検索しましたが、この表には国名と2文字の略語しか記載されていません。また、国を使用して、ユーザーにデフォルトのロケール、通貨、および3文字の略語(サードパーティの統合に必要)を割り当てたいと思います。

4

2 に答える 2

1

ユーザーのロケールを識別する最善の方法は、HTTP 要求の Accept-Language 設定を調べることです。

例えば、私の言う:Accept-Language: fr-BE

これにより、私のロケール、私の言語 (fr: フランス語)、および私の国 (BE: ベルギー) が得られます。

また、私のような多くの国では、国に基づくロケール識別が間違っていることを覚えておいてください: 多くの Web サイトは私の国 (ベルギー) を正しく識別し、デフォルトのロケールを想定しています: ベルギー人の 60% がオランダ語 (nl) を話すため、nl-BE です。したがって、これらのサイトは、ベルギーの訪問者 (私を含む) の 40% にとって間違っています。

彼らのサイトは私の言語ではない言語で表示されるため、私にとって悪い経験であり、最初に私がしなければならないことは、彼らの小さな言語のポップアップメニューを探すことです.

彼らが単に私の を調べていたらAccept-Language、彼らのサイトを私の言語ですぐに見せてくれたでしょう。

于 2011-09-20T10:19:25.160 に答える
0

見てください:https://github.com/mm1/country-list

于 2011-09-19T21:22:33.223 に答える