Postgis / Geodjango: Cannot determine PostGIS version for database
Just add in your settings.py your right version of postgis :
POSTGIS_VERSION = (2, 0, 3)
As a first debugging step: try to check the postgis template version manually, e.g. on the command-line connect to your database with psql test
, and query with select postgis_lib_version();
. This function should be defined in template_postgis and return some number. Example output:
$ psql testpsql (9.0.4)Type "help" for help.test=# select postgis_lib_version(); postgis_lib_version--------------------- 1.5.2(1 row)
If an error occurs, you know the error is in the database.
The solution for me was to run the following in the postgres terminal:
psql database_namedatabase_name=# CREATE EXTENSION postgis;
If you get ERROR: relation "spatial_ref_sys" already exists
, run the following before CREATE EXTENSION postgis
:
drop table spatial_ref_sys; drop table geometry_columns;