diff --git a/trytond_gis/postgis/database.py b/trytond_gis/postgis/database.py index a2041fe9df..a35dfb9e90 100644 --- a/trytond_gis/postgis/database.py +++ b/trytond_gis/postgis/database.py @@ -7,6 +7,7 @@ from psycopg2.extensions import (register_adapter, new_type, register_type, Binary) from trytond.backend.postgresql.database import Database as PGDatabase +from trytond.config import parse_uri from trytond_gis import _GeoJSON @@ -30,6 +31,13 @@ class Database(PGDatabase): cursor = db_connection.cursor() cursor.execute("CREATE EXTENSION postgis") + @classmethod + def _connection_params(cls, name): + params = super()._connection_params(name) + uri = parse_uri(params['dsn']) + params['dsn'] = uri._replace(scheme='postgresql').geturl() + return params + def get_connection(self, autocommit=False, readonly=False): conn = super(Database, self).get_connection(autocommit, readonly)