Я пытаюсь сохранить местоположение в формате GeoJson в MongoDb, используя Doctrine ODM:
Что я делаю, это:
Отображение:
class Coordinates
{
/** @MongoDB\String */
protected $type;
/** @MongoDB\Hash */
protected $coordinates;
public function __construct($type='Point',$coordinates)
{
$this->setType($type);
$this->setCoordinates($coordinates);
}
Когда я пытаюсь сохранить одно местоположение, я получаю его следующим образом:
coordinates: { type: "Point", coordinates: { 0: -6.855243444442749, 1: 33.9704221689807 } }
который не является форматом GeoJson.
Правильный формат должен быть
coordinates: { type: "Point", coordinates: [ -6.855243444442749,33.9704221689807 ] }
Как я могу достичь этого?
Большое спасибо !
Редактировать!
Вот как я храню это в PHP:
$coordinates=new Coordinates('Point',[$lng,$lat]);
Да !
Я получил ответ в твиттере: P
Я должен был отобразить все поле координат как хэш
Других решений пока нет …