Клуб API Карт

Редактирование я.карты пользователями на сайте.

koc.stranger
23 мая 2014, 03:02

Доброго времени, вот что хочу сделать:

- Пользователь указывает свой адрес в анкете, и при сохранений анкеты,  автоматом добавляется метка на я.карту по адресу который указали в анкете.

- Когда пользователь переходит в раздел "Карта", то ему загружается я.карта со всеми метками.

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

 

Основные вопросы которые пока не понятны мне:

1. В каком виде и где хранить данные о метках?

2. Как реализовать редактирование карты для админа?

 

Заранее спасибо за советы и помощь..

5 комментариев
Подписаться на комментарии к посту

1. Где вам удобно. Наверное в БД.

2. Запрограммировать. Я не знаю как у вас будет реализован интерфейс редактирования. В простейшем случае слушать клик на метке и показывать форму, при ее сабмите сохранять данные метки в БД

Всеволод Шмыров
23 мая 2014, 11:42
1. Эту информацию нужно будет где-то хранить на стороне backend. При открытии страницы загружать данные для конкретного пользователя, а при редактировании посылать ajax запрос на сохранение.
2. В API есть встроенные редакторы ломанной линии и полигона.
http://api.yandex.ru/maps/jsbox/2.1/polylineEditor
http://api.yandex.ru/maps/jsbox/2.1/polygonEditor
Для перестановки метки можно использовать опции "draggable" геообъекта и события "dragstart", "drag" и "dragend".
http://api.yandex.ru/maps/jsbox/2.1/placemark (метка "я тащусь").

Понял спасибо, буду пробывать хранить в БД..

А в каком виде лучше хранить данные о метках?

- адреса пользователей и при загрузке карты по адресу искать координаты и ставить там метку

- координаты, получать их когда пользователь будит сохранять анкету и запысывать в бд

может еще какие-то варианты ..

 

Адреса лучше геокодировать на сервере и хранить в БД координаты.

Геокодировать все сразу или по одному

Сейчас попробую собрать все свои мысли вместе ..

Если я все правильно понимаю, то что мне нужно сделать:

1. Получить координаты точки, по адресу из анкеты пользователя и записать эти координаты в БД

2. При переходе пользователя в раздел "карта", загрузить скрипт с выводом карты и загрузить на неё все метки по координатам из БД

3. Для редактирования админом, сделать тоже самое как п.2, но добавить скрипт редактирования, чтобы можно было перемещать метки и сохранять изменения в БД.

 

Поправьте меня если что-то не так?