Lisää

Virheellinen GeoJSON, kun lisäät tietoja esitteestä CartoDB (PostGIS) -taulukkoon

Virheellinen GeoJSON, kun lisäät tietoja esitteestä CartoDB (PostGIS) -taulukkoon


Olen seurannut tätä CartoDB: n opetusohjelmaa.

Luon GeoJSONin seuraavilla tavoilla:

var drawing = "'" + JSON.stringify (layer.toGeoJSON ()) + "" ";

ja sitten lisääminen käyttämällä mukautettua SQL-toimintoa, joka sisältää:

_the_geom: = ST_SetSRID (ST_GeomFromGeoJSON (_geojson), 4326);

Saan virheen:Virheellinen GeoJSON-esitys. Olen yrittänyt syöttää sql: n, jonka javascript tuottaa suoraan CartoDB-konsoliin, ja saan saman virheen. Esimerkki alla.

SELECT insert_data ('{"type": "Feature", "properties": {}, "geometry": {"type": "Point", "coordinates": [- 71.11295700073242,42.37896312335581]}})

Luetun toiminnon dokumentaation lukeminen "ST_GeomFromGeoJSONtoimii vain JSON Geometry -fragmenteille. Se heittää virheen, jos yrität käyttää sitä koko JSON-asiakirjassa. "Voisiko virhe johtua tyhjistä ominaisuuksista?


ST_GeomFromGeoJSONodottaa oikeastaan ​​vain syötävänsägeometriaosan esineestä, joten tämä toimii:

valitse st_astext (st_geomfromgeojson ('{"type": "Point", "coordinates": [-71.11295700073242,42.37896312335581]}'));

Joten haluat jotain enemmän tällaista JS: ssäsi:

var piirustus = "'" + JSON.stringify (layer.toGeoJSON (). geometria) + "" ";