diff options
| author | Sebastian Bank <sebastian.bank@uni-leipzig.de> | 2014-12-04 14:34:08 +0100 |
|---|---|---|
| committer | Sebastian Bank <sebastian.bank@uni-leipzig.de> | 2014-12-04 14:34:08 +0100 |
| commit | 0e61acaf145f57c78a13fc5c20052e24472cfb02 (patch) | |
| tree | af99b31429ddcbe6536a7bdb2af539884892b5d4 /lib/sqlalchemy | |
| parent | 156f473de00024688404d73aea305cd4fc452638 (diff) | |
| download | sqlalchemy-0e61acaf145f57c78a13fc5c20052e24472cfb02.tar.gz | |
warn on duplicate polymorphic_identity
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/orm/mapper.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/sqlalchemy/orm/mapper.py b/lib/sqlalchemy/orm/mapper.py index 863dab5cb..0e0c1a833 100644 --- a/lib/sqlalchemy/orm/mapper.py +++ b/lib/sqlalchemy/orm/mapper.py @@ -974,6 +974,15 @@ class Mapper(InspectionAttr): self._all_tables = self.inherits._all_tables if self.polymorphic_identity is not None: + if self.polymorphic_identity in self.polymorphic_map: + util.warn( + "Reassigning polymorphic association for identity %r " + "from %r to %r: Check for duplicate use of %r as " + "value for polymorphic_identity." % + (self.polymorphic_identity, + self.polymorphic_map[self.polymorphic_identity], + self, self.polymorphic_identity) + ) self.polymorphic_map[self.polymorphic_identity] = self else: |
