[Sqlalchemy-tickets] Issue #3630: inconsistency in concrete relationships w/ name overlap in relati
Brought to you by:
zzzeek
|
From: Mike B. <iss...@bi...> - 2016-01-19 18:08:48
|
New issue 3630: inconsistency in concrete relationships w/ name overlap in relationship() vs. backref https://bitbucket.org/zzzeek/sqlalchemy/issues/3630/inconsistency-in-concrete-relationships-w Mike Bayer: this is extracted from #3022. test: ``` #!python from sqlalchemy import * from sqlalchemy.orm import * from sqlalchemy.ext.declarative import declarative_base Base = declarative_base() err = True class A(Base): __tablename__ = 'a' id = Column(Integer, primary_key=True) if not err: b = relationship("B", foreign_keys="B.a_id", backref="a") class A1(A): __tablename__ = 'a1' id = Column(Integer, primary_key=True) if not err: b = relationship("B", foreign_keys="B.a1_id", backref="a1") __mapper_args__ = {'concrete': True} class B(Base): __tablename__ = 'b' id = Column(Integer, primary_key=True) a_id = Column(ForeignKey('a.id')) a1_id = Column(ForeignKey('a1.id')) if err: a = relationship("A", backref="b") a1 = relationship("A", backref="b") configure_mappers() ``` |