Список городов на HTML-странице

#forms

#формы

Вопрос:

Я хочу, чтобы пользователь выбирал город при заполнении своего профиля. Каков наилучший способ сделать это в веб-приложении?

У меня есть какой-нибудь другой способ, кроме как просто сохранить список городов в моей базе данных. Может быть, какой-нибудь общедоступный API?

Ответ №1:

Лучший способ сделать это — использовать большую базу данных, если только вы не хотите разрешить пользователю вводить название города.

К счастью для вас, вам не нужно выходить и создавать базу данных самостоятельно. Вот каталог бесплатных баз данных:http://www.sqldumpster.com/databases/geographic /

Ответ №2:

Я бы просто использовал простое текстовое поле с автозаполнителем. Вы можете получить список городов, но вам придется поддерживать его в актуальном состоянии, и вам придется беспокоиться о такой ерунде, как разница между «Сент-Джон», «St John» и «St. Джон».

Отправка клиенту всего списка городов станет просто кошмаром пользовательского интерфейса, в списке выбора будут тысячи и тысячи записей, и вам придется отправлять клиенту много данных; нет причин так сильно ненавидеть своих посетителей.

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

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

Ответ №3:

Вы могли бы сохранить их в текстовом файле, иметь копию на своем сервере (для проверки) и загружать города через AJAX.

Однако этот подход не сработает для пользователей без JS.

И, если быть снобом, можете ли вы лучше определить? Лучший в каком смысле? Самый быстрый? Самый легкий? Самый потрясающий? Самый питонический? Я не уверен, что вы имеете в виду под этим.