]> git.openstreetmap.org Git - nominatim.git/blobdiff - nominatim/db/sqlalchemy_schema.py
rename documentation to 'Nominatim Manual'
[nominatim.git] / nominatim / db / sqlalchemy_schema.py
index 7af3d44cd65dbe62ea8bb6b6af0ac0f1690d9773..2ca518cad06cc888113434ba3a168b5247602f49 100644 (file)
@@ -10,7 +10,7 @@ SQLAlchemy definitions for all tables used by the frontend.
 from typing import Any
 
 import sqlalchemy as sa
-from sqlalchemy.dialects.postgresql import HSTORE, ARRAY, JSONB
+from sqlalchemy.dialects.postgresql import HSTORE, ARRAY, JSONB, array
 from sqlalchemy.dialects.sqlite import JSON as sqlite_json
 
 from nominatim.db.sqlalchemy_types import Geometry
@@ -21,6 +21,7 @@ class PostgresTypes:
     Composite = HSTORE
     Json = JSONB
     IntArray = ARRAY(sa.Integer()) #pylint: disable=invalid-name
+    to_array = array
 
 
 class SqliteTypes:
@@ -30,6 +31,12 @@ class SqliteTypes:
     Json = sqlite_json
     IntArray = sqlite_json
 
+    @staticmethod
+    def to_array(arr: Any) -> Any:
+        """ Sqlite has no special conversion for arrays.
+        """
+        return arr
+
 
 #pylint: disable=too-many-instance-attributes
 class SearchTables: