Столбец Sequelize и PostGIS geometry не возвращает правильный JSON - PullRequest
0 голосов
/ 21 мая 2019

У меня есть база данных Postgres с запущенной PostGIS.Я использую Node.js и Sequelize для работы с данными в базе данных.В одной из моих таблиц у меня есть столбец геометрии, который возвращает странные результаты.

Обычно, когда я запрашиваю столбец геометрии с помощью sequelize, я получаю что-то вроде этого:

{ 
  type: 'Point',
  coordinates: [ 33.48051135141372, -111.92908778058047 ] 
}

Но для некоторыхпричина, когда я регистрирую результаты из этого столбца, я получаю следующую строку:

01010000004D20CF54F80241409C8C9B8BAE9E5DC0

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

Может кто-нибудь объяснить, почему я мог получить это вместо обычного JSON выше?

1 Ответ

0 голосов
/ 21 мая 2019

Координаты должны сначала быть выражены как longitude, затем latitude.

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

Используя Postgis напрямую, вы можете отобразить текстовое представление геометрии:

select st_asText('01010000004D20CF54F80241409C8C9B8BAE9E5DC0');
                st_astext
------------------------------------------
 POINT(34.023203469406 -118.479403402237)

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

...