Дизайн базы данных, Карты Google и Поля адресов - PullRequest
5 голосов
/ 24 июня 2011

Я хочу собрать адреса своих пользователей, чтобы я мог нанести их на карту Google.Я знаю, что мне нужно хранить значения широты и долготы их адреса, которые я могу получить из Google Map API.

Я ищу рекомендации о том, как разделить различные части адреса и сохранить их.в базу данных. Я обычно вижу такие вещи:

  • Адресная строка 1
  • Адресная строка 2
  • Город
  • Штат /Регион / провинция
  • Почтовый индекс
  • Страна

Google по-разному разбивает эти компоненты адреса.См., Например: http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=false

Я не уверен, какие части компонентов адреса Google соответствуют тому, что обычно можно увидеть в веб-формах (например, administrative_area_level_1 всегда штат / регион / провинция?).Я хотел бы хранить различные компоненты адреса как можно более детально, чтобы у меня был максимальный контроль при последующем отображении информации об адресе.

ПРИМЕЧАНИЕ. Я также планирую хранить formatted_address, так как считаю, чтоможет быть полезно в некоторых случаях.

Итак, что я должен хранить в моей базе данных?

1 Ответ

4 голосов
/ 24 июня 2011

В этом разделе документации по геокодированию приводится довольно хорошее описание типов данных, которые вы получаете от обратного геокодера.Эти типы данных были разработаны Google для описания любого адреса в мире, поэтому, вероятно, это хорошая отправная точка.

Основываясь на следующей цитате, administrator_area_level_1 описывает субнациональные юрисдикции, штаты в США / Австралии, префектуры в Японии, провинции во Франции и т. д .:

administrator_area_level_1 указывает на гражданский объект первого порядка ниже уровня страны.В Соединенных Штатах эти административные уровни являются штатами.Не все страны обладают такими административными уровнями.

Возможно, вам нужно быть осторожным с предположениями, которые вы делаете относительно этих типов данных для других стран.Например, administrator_area_level_1 для адресов в Лондоне - Англия .Но при хорошем понимании этой схемы вы сможете отображать дружественные для локали адреса в любой точке мира.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...