diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-02-27 20:23:23 +0000 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-02-27 20:23:23 +0000 |
| commit | 9302f2b2fbae513c675e5fcd19e3836d4b63d0fe (patch) | |
| tree | f0f8c43642307df21cd75848f7731164ace3af0a /lib/sqlalchemy | |
| parent | 82edfd0e915717dbc93d53247e5f2515ac5dd474 (diff) | |
| download | sqlalchemy-9302f2b2fbae513c675e5fcd19e3836d4b63d0fe.tar.gz | |
- postgres TIMESTAMP renders correctly [ticket:981]
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/databases/postgres.py | 7 | ||||
| -rw-r--r-- | lib/sqlalchemy/sql/compiler.py | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/lib/sqlalchemy/databases/postgres.py b/lib/sqlalchemy/databases/postgres.py index a9fa90c68..9f8e98607 100644 --- a/lib/sqlalchemy/databases/postgres.py +++ b/lib/sqlalchemy/databases/postgres.py @@ -631,6 +631,13 @@ class PGCompiler(compiler.DefaultCompiler): } ) + functions = compiler.DefaultCompiler.functions.copy() + functions.update ( + { + 'TIMESTAMP':lambda x:'TIMESTAMP %s' % x, + } + ) + def visit_sequence(self, seq): if seq.optional: return None diff --git a/lib/sqlalchemy/sql/compiler.py b/lib/sqlalchemy/sql/compiler.py index c5ff974e5..8a2a5f2dd 100644 --- a/lib/sqlalchemy/sql/compiler.py +++ b/lib/sqlalchemy/sql/compiler.py @@ -349,7 +349,7 @@ class DefaultCompiler(engine.Compiled): name = self.function_string(func) if callable(name): - return name(*[self.process(x) for x in func.clause_expr]) + return name(*[self.process(x) for x in func.clauses]) else: return ".".join(func.packagenames + [name]) % {'expr':self.function_argspec(func)} @@ -357,7 +357,7 @@ class DefaultCompiler(engine.Compiled): return self.process(func.clause_expr) def function_string(self, func): - return self.functions.get(func.__class__, func.name + "%(expr)s") + return self.functions.get(func.__class__, self.functions.get(func.name, func.name + "%(expr)s")) def visit_compound_select(self, cs, asfrom=False, parens=True, **kwargs): stack_entry = {'select':cs} |
