diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-11-03 04:54:56 +0000 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-11-03 04:54:56 +0000 |
| commit | cc9c615c5af8480c2a32d00a1f0d705f11676040 (patch) | |
| tree | 205e58e407ae5ad1c26debcfac61b9bf4ed313b4 /lib/sqlalchemy | |
| parent | 659ca0c5088b2b6dcd66e33bb9aff79aaffc421a (diff) | |
| download | sqlalchemy-cc9c615c5af8480c2a32d00a1f0d705f11676040.tar.gz | |
- Fixed the call to get_committed_value() on CompositeProperty.
[ticket:1504]
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/orm/mapper.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/orm/properties.py | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/sqlalchemy/orm/mapper.py b/lib/sqlalchemy/orm/mapper.py index 6bc55c831..d6bb2b2e6 100644 --- a/lib/sqlalchemy/orm/mapper.py +++ b/lib/sqlalchemy/orm/mapper.py @@ -1628,7 +1628,7 @@ class Mapper(object): if polymorphic_on is not None: discriminator = row[polymorphic_on] - if discriminator is not None: + if discriminator is not None or None in polymorphic_instances: _instance = polymorphic_instances[discriminator] if _instance: return _instance(row, result) diff --git a/lib/sqlalchemy/orm/properties.py b/lib/sqlalchemy/orm/properties.py index 1ca71390c..1fd7d48a9 100644 --- a/lib/sqlalchemy/orm/properties.py +++ b/lib/sqlalchemy/orm/properties.py @@ -161,7 +161,8 @@ class CompositeProperty(ColumnProperty): return self.get_col_value(column, obj) def getcommitted(self, state, column, passive=False): - obj = state.get_impl(self.key).get_committed_value(state, passive=passive) + # TODO: no coverage here + obj = state.get_impl(self.key).get_committed_value(state, state.dict, passive=passive) return self.get_col_value(column, obj) def setattr(self, state, value, column): |
