ユーザーが入力した住所が正しいことを確認したい。
street、street_number、postal_code、city、countryのフィールドがあると仮定します
ユーザーが、自分の国がフランスで、都市がニューヨークであると入力した場合、どのようにエラーを表示できますか?
また
郵便番号が都市に対応していないことをどのように検出できますか?
Ruby On Railsでこの問題に対処する戦略はありますか、それともユーザーエントリを信頼するだけですか?
ユーザーが入力した住所が正しいことを確認したい。
street、street_number、postal_code、city、countryのフィールドがあると仮定します
ユーザーが、自分の国がフランスで、都市がニューヨークであると入力した場合、どのようにエラーを表示できますか?
また
郵便番号が都市に対応していないことをどのように検出できますか?
Ruby On Railsでこの問題に対処する戦略はありますか、それともユーザーエントリを信頼するだけですか?
米国の郵便番号ディレクトリを公開している会社はいくつかありますが、通常はそれほど高価ではなく、緯度/経度データを提供している会社もあります。これは、米国または北アメリカの都市と州を検証する最も一般的な方法です。国や都市への世界的な郵便番号は、より難しい問題、または少なくともより高価な問題になる可能性があります。
もう1つのアプローチは、Google Maps APIを使用することです。おそらく、位置認識ブラウザ(すべて最新のブラウザ)から取得できるデータと組み合わせて使用します。正直なところ、私がAPIを使用してからしばらく経ちましたが、緯度/経度を指定するとかなり詳細な情報を取得できることを思い出しているようです。Googleは現在MapsAPIの高い使用料を請求していますが、サイトのトラフィックが中程度の場合でも、おそらくフリーゾーンにいます。
あるレベルでは、ユーザーを信頼する必要があります。しばらく前に、データベースでユーザーが報告した郵便番号に異常が見つかったことを覚えています。誰もがカリフォルニア州ビバリーヒルズに住んでいたようです。これは、テレビ番組「90210」の元のバージョンがまだ存在していた2000年頃でした-それは郵便番号です:-)。
アドレスを確認するためのjQueryプラグインだけを検討しましたか?多くのユーザーは無料で、最大250回のルックアップ/月で、常に最新です(データベースを維持する必要はありません)。
ちなみに、私はSmartyStreetsで働いています。都市が郵便番号と一致するかどうかを調べるための郵便番号APIもあります。その逆も同様です。いずれにせよ、ユーザーが入力したアドレスが完全に有効でなくても、ユーザーエクスペリエンスをポジティブにするために多大な努力を払っています。