]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
Implements TSVECTOR type for postgresql.
authorNoufal Ibrahim <noufal@nibrahim.net.in>
Thu, 5 Dec 2013 12:06:57 +0000 (17:36 +0530)
committerNoufal Ibrahim <noufal@nibrahim.net.in>
Mon, 9 Dec 2013 19:28:09 +0000 (00:58 +0530)
Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
lib/sqlalchemy/dialects/postgresql/__init__.py
lib/sqlalchemy/dialects/postgresql/base.py

index 408b678467ded92201554db7dc0013f8f9b01e2e..3c1d19504d8c7ca0c1a141c4b3e54461e459fac9 100644 (file)
@@ -11,7 +11,8 @@ base.dialect = psycopg2.dialect
 from .base import \
     INTEGER, BIGINT, SMALLINT, VARCHAR, CHAR, TEXT, NUMERIC, FLOAT, REAL, \
     INET, CIDR, UUID, BIT, MACADDR, DOUBLE_PRECISION, TIMESTAMP, TIME, \
-    DATE, BYTEA, BOOLEAN, INTERVAL, ARRAY, ENUM, dialect, array, Any, All
+    DATE, BYTEA, BOOLEAN, INTERVAL, ARRAY, ENUM, dialect, array, Any, All, \
+    TSVECTOR
 from .constraints import ExcludeConstraint
 from .hstore import HSTORE, hstore
 from .ranges import INT4RANGE, INT8RANGE, NUMRANGE, DATERANGE, TSRANGE, \
@@ -23,5 +24,5 @@ __all__ = (
     'DOUBLE_PRECISION', 'TIMESTAMP', 'TIME', 'DATE', 'BYTEA', 'BOOLEAN',
     'INTERVAL', 'ARRAY', 'ENUM', 'dialect', 'Any', 'All', 'array', 'HSTORE',
     'hstore', 'INT4RANGE', 'INT8RANGE', 'NUMRANGE', 'DATERANGE',
-    'TSRANGE', 'TSTZRANGE'
+    'TSRANGE', 'TSTZRANGE', 'TSVECTOR'
 )
index b80f269c149398d8fae499bf69f79896e78a250c..5ef16c412a25d7220e2a7968806041375da6c112 100644 (file)
@@ -368,6 +368,10 @@ class UUID(sqltypes.TypeEngine):
 
 PGUuid = UUID
 
+class TSVECTOR(sqltypes.TypeEngine):
+    __visit_name__ = 'TSVECTOR'
+
+
 
 class _Slice(expression.ColumnElement):
     __visit_name__ = 'slice'
@@ -1163,6 +1167,9 @@ class PGDDLCompiler(compiler.DDLCompiler):
 
 
 class PGTypeCompiler(compiler.GenericTypeCompiler):
+    def visit_TSVECTOR(self, type):
+        return "TSVECTOR"
+    
     def visit_INET(self, type_):
         return "INET"