diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2012-09-28 11:00:53 -0400 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2012-09-28 11:00:53 -0400 |
commit | 4aba2eb6017de5d4b56d4aa34af87f2ebab903b0 (patch) | |
tree | 8bc1ebfe192df559e4ec507818d88156eabb903e /lib/sqlalchemy/orm/relationships.py | |
parent | 21cac5b598a83ef0e24423dc523629b475aa3af0 (diff) | |
download | sqlalchemy-4aba2eb6017de5d4b56d4aa34af87f2ebab903b0.tar.gz |
- fix annotation transfer when producing m2m backref, [ticket:2578]
Diffstat (limited to 'lib/sqlalchemy/orm/relationships.py')
-rw-r--r-- | lib/sqlalchemy/orm/relationships.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/sqlalchemy/orm/relationships.py b/lib/sqlalchemy/orm/relationships.py index dd6f2442b..c861edf83 100644 --- a/lib/sqlalchemy/orm/relationships.py +++ b/lib/sqlalchemy/orm/relationships.py @@ -170,6 +170,12 @@ class JoinCondition(object): log.info('%s local/remote pairs [%s]', self.prop, ','.join('(%s / %s)' % (l, r) for (l, r) in self.local_remote_pairs)) + log.info('%s remote columns [%s]', self.prop, + ','.join('%s' % col for col in self.remote_columns) + ) + log.info('%s local columns [%s]', self.prop, + ','.join('%s' % col for col in self.local_columns) + ) log.info('%s relationship direction %s', self.prop, self.direction) @@ -266,6 +272,14 @@ class JoinCondition(object): "foreign key reference to the parent table." % self.prop) + @property + def primaryjoin_minus_local(self): + return _deep_deannotate(self.primaryjoin, values=("local", "remote")) + + @property + def secondaryjoin_minus_local(self): + return _deep_deannotate(self.secondaryjoin, values=("local", "remote")) + @util.memoized_property def primaryjoin_reverse_remote(self): """Return the primaryjoin condition suitable for the |