Клуб API Карт

Сохранение данных на карте

Пост в архиве.
game-life
10 февраля 2013, 20:04

Здравствуйте, 

подскажите пожалуйста, хочу сделать возможность на сайте редактировать карту, а именно, оставлять

многоугольные области (пример - http://www.petslocally.ru/edit.html), но при этом хочу, чтобы правки пользователей сохранялись на карте и любой зашедший мог бы их увидеть. В документации смотрел, но не нашел возможность сохранения данных. Направте на путь истиный...

2 комментария

 

Добрый вечер! Как раз работаю над похожим проектом. Я делаю следующим образом: добавляю обработчик на событие изменения состояния редактора и сохраняю координаты многоугольника с помощью ajax в БД.

myPolygon.events.add(["editorstatechange"], function (event) {
  var data = {};
  data["date_from"] = $('#date_from').val();
  data["date_till"] = $('#date_till').val();
  data["polygons"] = myPolygon.geometry.getCoordinates()[0];
  $.ajax('/add_building', { data: JSON.stringify(data), contentType: 'application/json', type: 'POST'});
});

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

 

Да, иначе никак. Если надо, чтобы изменения видели все желающие — нужно стороннее хранилище. ЯК апи предоставляет инструменты работы с картой, но не дает возможности делать полноценные приложения внутри себя. RESTful и все такое.

Если нужно только сохранение многоугольников, и никаких сложных запросов не нужно — то вполне подойдут nosql решения: redis, mongodb, etc.