Как создать адресную книгу города для Drupal Openlayers?
Добрый день, подскажите пожалуйста.
Создаю сайт, в котором будет город, и пользователи смогут создавать ноды которые имеют адрес,
адрес улицы и дома города.
Т.к. мне народная карта яндекс не очень устраивает т.к. она рисует свои иконки магазинов, центров памятников и т.д., то я решил перейти на Bing maps (Nokia), которые на удивление раза в 2-3 лучше по детализации чем Яндекс.
Дак вот проблема в том, что пользователям хочу дать возможность ввода адреса буквами/текстом, и чтобы по окончанию создания эта нода имела реальные координаты.
Как я понял тут на помощь должен придти модуль Addressfield, Geofield и Geocode from another field.
Получается в поле Addressfield пользователь будет вводить адресс, после чего Geocode прочтёт этот текст поищет в базе (яндекс, гугл) этот адрес и вернёт координаты этого места полю Geofield.
Но тут одно, мой город плохо знает Geocode, к тому же мне не нравится форма ввода адреса у Addressfield, она какая то американская, и в идеале хочется всё же Autocomplete при вводе адреса.
Дак вот, что я думаю, а если создать свою адресную книгу, которая будет точнее, актуальнее и детальнее
Это конечно большая работа, но своя адресная это полюбому будет качественней сторонних.
На ум приходит только одно, создать словарь таксономии АДРЕС, в котором будет иерархия терминов, начиная от РАЙОНА города, потом УЛИЦА, потом ДОМ, таким образом даже смогу добиться своей городской территориальности.
Также в таксономии будут допол. поля, такие как ШИРОТА и ДОЛГОТА.
В результате получаем самую простецкую адресную, которая будут термином добавлять к ноде, как адрес.
будет иметь автокомплит, и будет куда детальнее (хоть и муторнее в создании).
Что вы думаете, не совсем бредовая идея, если не бредовая то как по вашему, ведь таким образом у меня словарь будет состоять наверно из 10 000 как минимум терминов на каждый дом.
Если речь о России, то лучше не изобретать велосипед и для автокомплита воспользоваться КЛАДРом (подробнее тут — habrahabr.ru/post/192132 ).
Геокодер может получать данные из любого текстового поля, ну и плюс сервис геокодирования можно указать например Яндекс.Карты.
Тогда вопрос, т.к. я в гео пока плохо разбираюсь, как устроен геокодер, он просто берёт строку которую я ему дал и пытается распознать в ней город, улицу и дом? Найдя более менее вариант возращает координаты?
Тогда в этом случае кладр является лишь как словарём всех существующих реально адресов?
Получается первое, что у меня в голову лезет, то что на друпале сейчас не хватает какого нибудь махонького модуля, которое создавало бы дополнительное поле ССК, к которому было по умолчанию прикручено Jquery из вашего первого поста. (Единственное наверное, что - у того поля дожна быть выборка по каким регионам автокомплитить, и от какого уровня: РЕГИОН, РЕСПУБЛИКА, РАЙОН и т.д.)
Тогда бы, такой модуль чудесно бы подружился с Geocode from another field модулем
К сожалению я не программист, я лишь могу на уровне CMS делать и верстать CSS. Поэтому пойду пытать удачу в гугле готового решения :) .
Большое вам спасибо за подсказку о таком чудесном сервисе как Кладр!
Нагуглил: www.drupal.ru/node/64769 , товарищ Ch - в песочнице создал модуль, и вроде бы даже, то что нужно.
Можно указать какие уровни будут спрашиваться при создании, я указал ГОРОД, УЛИЦА и ЗДАНИЕ, город по умолчанию поставил, чтобы при создании ноды он мог искать улицы только по выбранному городу (а само поле с городом можно скрыть от обычных пользователей, чтобы не изменили его) однако, город автокомплитится, а ни улица - ни дом, не работают :/