diff --git a/django/contrib/gis/db/backends/postgis/base.py b/django/contrib/gis/db/backends/postgis/base.py index 87a30004a1..98c2813aa2 100644 --- a/django/contrib/gis/db/backends/postgis/base.py +++ b/django/contrib/gis/db/backends/postgis/base.py @@ -23,4 +23,7 @@ class DatabaseWrapper(Psycopg2DatabaseWrapper): super().prepare_database() # Check that postgis extension is installed. with self.cursor() as cursor: + cursor.execute("SELECT 1 FROM pg_extension WHERE extname = %s", ["postgis"]) + if bool(cursor.fetchone()): + return cursor.execute("CREATE EXTENSION IF NOT EXISTS postgis")