diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-09-15 19:17:14 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-09-15 19:17:14 -0400 |
| commit | 6409a06df190c8f6cc4a77e714aa989243af46f5 (patch) | |
| tree | e9ee855b4d8c4addb7490f42cb39529cd6dd070f | |
| parent | d36d8f5c6cb6ecf5a31139a3ba7cb3416a54f313 (diff) | |
| download | sqlalchemy-6409a06df190c8f6cc4a77e714aa989243af46f5.tar.gz | |
- Fixed a regression in 0.6.5 which occurred if you
passed an empty list to "include_properties" on
mapper() [ticket:1918]
| -rw-r--r-- | CHANGES | 4 | ||||
| -rw-r--r-- | lib/sqlalchemy/orm/mapper.py | 2 | ||||
| -rw-r--r-- | test/orm/test_mapper.py | 6 |
3 files changed, 10 insertions, 2 deletions
@@ -11,6 +11,10 @@ CHANGES backrefs involved, where the initiating parent was a subclass (with its own mapper) of the previous parent. + + - Fixed a regression in 0.6.5 which occurred if you + passed an empty list to "include_properties" on + mapper() [ticket:1918] - Added an assertion during flush which ensures that no NULL-holding identity keys were generated diff --git a/lib/sqlalchemy/orm/mapper.py b/lib/sqlalchemy/orm/mapper.py index 816bf95bf..8d31dd89a 100644 --- a/lib/sqlalchemy/orm/mapper.py +++ b/lib/sqlalchemy/orm/mapper.py @@ -193,7 +193,7 @@ class Mapper(object): else: self.polymorphic_map = _polymorphic_map - if include_properties: + if include_properties is not None: self.include_properties = util.to_set(include_properties) else: self.include_properties = None diff --git a/test/orm/test_mapper.py b/test/orm/test_mapper.py index 3012f4b43..a19af5f4f 100644 --- a/test/orm/test_mapper.py +++ b/test/orm/test_mapper.py @@ -487,7 +487,10 @@ class MapperTest(_fixtures.FixtureTest): class HasDef(object): def name(self): pass - + class Empty(object):pass + + empty = mapper(Empty, t, properties={'empty_id' : t.c.id}, + include_properties=[]) p_m = mapper(Person, t, polymorphic_on=t.c.type, include_properties=('id', 'type', 'name')) e_m = mapper(Employee, inherits=p_m, @@ -546,6 +549,7 @@ class MapperTest(_fixtures.FixtureTest): # excluding the discriminator column is currently not allowed class Foo(Person): pass + assert_props(Empty, ['empty_id']) assert_raises( sa.exc.InvalidRequestError, |
