diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-02-28 23:18:43 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-02-28 23:18:43 +0000 |
commit | a4ba9b5414ee3d18667b67d57a361845a8354d3c (patch) | |
tree | c6df8ddb0ffa2726c7166d0808c57df8bbdd632e /lib/sqlalchemy/sql.py | |
parent | 7c1bb1f7a23464191461f5793c323dd7637ba594 (diff) | |
download | sqlalchemy-a4ba9b5414ee3d18667b67d57a361845a8354d3c.tar.gz |
oid inits at compilation time/when needed again, added a unit test
Diffstat (limited to 'lib/sqlalchemy/sql.py')
-rw-r--r-- | lib/sqlalchemy/sql.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/sqlalchemy/sql.py b/lib/sqlalchemy/sql.py index f905da583..6b574861b 100644 --- a/lib/sqlalchemy/sql.py +++ b/lib/sqlalchemy/sql.py @@ -827,7 +827,9 @@ class Join(FromClause): else: self.onclause = onclause self.isouter = isouter - self.oid_column = self.left.oid_column + + oid_column = property(lambda s:s.left.oid_column) + def _exportable_columns(self): return [c for c in self.left.columns] + [c for c in self.right.columns] def _proxy_column(self, column): @@ -1001,6 +1003,7 @@ class TableClause(FromClause): if self.engine.oid_column_name() is not None: self._oid_column = schema.Column(self.engine.oid_column_name(), sqltypes.Integer, hidden=True) self._oid_column._set_parent(self) + self._orig_columns()[self._oid_column.original] = self._oid_column else: self._oid_column = None return self._oid_column @@ -1011,9 +1014,6 @@ class TableClause(FromClause): self._orig_cols= {} for c in self.columns: self._orig_cols[c.original] = c - oid = self.oid_column - if oid is not None: - self._orig_cols[oid.original] = oid return self._orig_cols columns = property(lambda s:s._columns) c = property(lambda s:s._columns) |