1

iOSアプリを作成しています。Googleの場所に関連付けられているデータを保存するためのローカルテーブルを設定しようとしています。主キーとして何を使用するかを理解するのに苦労しています。

Google Placeのドキュメントhttp://code.google.com/apis/maps/documentation/places/を読んだところ 、現在の場所を渡して、次の目的で使用できる「参照」IDのセットを取得できることがわかりました。場所の詳細を取得します。ただし、「異なる検索で特定の場所に同じトークンが返されるとは限らない」ため、その参照IDを主キーとして使用することはできません。データベース内の他のテーブルとの関係を形成できるように、データベース内のgoogleplaceキーを参照したいと思います。

グーグルプレイスの関係に基づいてローカルデータを保存したい場合、主キーとして何を使用しますか?たとえば、データベース内のこのGoogleの場所を「気に入った」ユーザーの数などのカスタムデータを保存したいと思います。

4

2 に答える 2

1

参照を主キーとして使用する必要があります。時間の経過とともに場所が変わる(ドリフトする)可能性がわずかにあるため、必ずしも参照を保証するものではありません。

リンク先の API ドキュメントから:

referencePlace Details リクエストでこの場所に関する追加情報を取得するために使用できる一意のトークンが含まれています。このトークンを保存し、将来いつでも使用して、このプレイスに関するキャッシュ データを更新できますが、特定のプレイスに対して異なる検索で同じトークンが返されるとは限りません。

を使用してid、検索で同じ場所を参照しているかどうかを確認できます。最終的には、参照が同じ場所を (ID を介して) 表示するかどうかを判断するために、アプリにいくつかのロジックを設定する必要があります。

于 2012-01-31T05:06:23.667 に答える
1

参照キーを主キーとしてデータベースに保存します。今問題は

1 つの場所に多くの参照 ID を設定できますが、すべての参照 ID は 1 つの場所を指します。たとえば、paris に 1233adasdadsa 2333asdasdads 2334adasdaads のような 3 つの参照 ID がある場合、各参照 ID は paris を指します。これは逆ジオコーディングと呼ばれます。

于 2012-01-28T22:41:02.080 に答える