summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/schema.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2010-03-11 12:42:06 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2010-03-11 12:42:06 -0500
commit19de4da70f714a1918ed1370f9a4ac589f20b7de (patch)
tree6a6fdf8aea3699cd398f28a2f0044d813ea7bfc4 /lib/sqlalchemy/schema.py
parent86df449c2b724341f3d3f322ad71252b287e1f12 (diff)
downloadsqlalchemy-19de4da70f714a1918ed1370f9a4ac589f20b7de.tar.gz
- the copy() method of Column now copies over uninitialized
"on table attach" events. Helps with the new declarative "mixin" capability.
Diffstat (limited to 'lib/sqlalchemy/schema.py')
-rw-r--r--lib/sqlalchemy/schema.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/sqlalchemy/schema.py b/lib/sqlalchemy/schema.py
index 08386059d..8ffb68a4e 100644
--- a/lib/sqlalchemy/schema.py
+++ b/lib/sqlalchemy/schema.py
@@ -813,7 +813,7 @@ class Column(SchemaItem, expression.ColumnClause):
[c.copy(**kw) for c in self.constraints] + \
[c.copy(**kw) for c in self.foreign_keys if not c.constraint]
- return Column(
+ c = Column(
name=self.name,
type_=self.type,
key = self.key,
@@ -828,7 +828,10 @@ class Column(SchemaItem, expression.ColumnClause):
server_onupdate=self.server_onupdate,
*args
)
-
+ if hasattr(self, '_table_events'):
+ c._table_events = list(self._table_events)
+ return c
+
def _make_proxy(self, selectable, name=None):
"""Create a *proxy* for this column.