sql >> Database >  >> RDS >> PostgreSQL

Hoe voldoe ik aan de force_srid_coordinate-beperking met GeoDjango/PostGIS?

Het klinkt alsof je een nieuw ArchivrItem probeert toe te voegen door dit te doen:

item = ArchivrItem(coordinate='POINT(51.520667 -0.094833)')
item.save()

En dit krijgt niet de juiste standaard SRID om een ​​of andere reden waar ik niet zeker van ben. Het expliciet specificeren zou echter moeten werken, bijvoorbeeld:

from django.contrib.gis.geos import Point
item = ArchivrItem(coordinate=Point(-0.094833, 51.520667, srid=4326))
item.save()

Ik zou zeggen dat de srid optioneel is als deze overeenkomt met de modeldefinitie, maar het kan geen kwaad om deze te specificeren, en je kunt zien of het eenvoudigweg gebruiken van de objectmanier het toch verhelpt. https://docs.djangoproject.com/en/dev/ref/contrib/gis/db-api/#creating-and-saving-geographic-models heeft nog meer voorbeelden.

[Terzijde, merk op dat POINT() X is, dan Y, d.w.z. lon dan lat, niet lat/lon. U kunt een SRID invoeren als het WKT is uitgebreid met "SRID=4326;POINT(-0.094833 51.520667)"]



  1. SSRS 2014 rapport implementatieprobleem

  2. Geneste SELECT COUNT maken met alias in Postgres

  3. Wat zijn de optimale varchar-formaten voor MySQL?

  4. Een speciaal netwerk configureren voor communicatie met beschikbaarheidsgroepen