diff options
| author | Michael Trier <mtrier@gmail.com> | 2009-04-18 15:35:07 +0000 |
|---|---|---|
| committer | Michael Trier <mtrier@gmail.com> | 2009-04-18 15:35:07 +0000 |
| commit | 7bb91d034f2460b180381f835a487854a1d96451 (patch) | |
| tree | 28912c71fe7e72f3f278514165eace203bf5f2a9 /lib/sqlalchemy | |
| parent | 33b3360e68a1f5395d09858001fdd4295461663b (diff) | |
| download | sqlalchemy-7bb91d034f2460b180381f835a487854a1d96451.tar.gz | |
Fixed adding of deferred or othe column properties to a declarative class.
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/ext/declarative.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/sqlalchemy/ext/declarative.py b/lib/sqlalchemy/ext/declarative.py index 084ec2699..e22928b48 100644 --- a/lib/sqlalchemy/ext/declarative.py +++ b/lib/sqlalchemy/ext/declarative.py @@ -552,6 +552,12 @@ class DeclarativeMeta(type): _undefer_column_name(key, value) cls.__table__.append_column(value) cls.__mapper__.add_property(key, value) + elif isinstance(value, ColumnProperty): + for col in value.columns: + if isinstance(col, Column) and col.table is None: + _undefer_column_name(key, col) + cls.__table__.append_column(col) + cls.__mapper__.add_property(key, value) elif isinstance(value, MapperProperty): cls.__mapper__.add_property(key, _deferred_relation(cls, value)) else: |
