[Sqlalchemy-tickets] Issue #4354: __delete__ doesnt work for many to one relationships (zzzeek/sqla
Brought to you by:
zzzeek
From: Michael B. <iss...@bi...> - 2018-11-01 15:48:07
|
New issue 4354: __delete__ doesnt work for many to one relationships https://bitbucket.org/zzzeek/sqlalchemy/issues/4354/__delete__-doesnt-work-for-many-to-one Michael Bayer: kind of a big oversight... ``` #!python from sqlalchemy import * from sqlalchemy.orm import * from sqlalchemy.ext.declarative import declarative_base Base = declarative_base() class A(Base): __tablename__ = 'a' id = Column(Integer, primary_key=True) data = Column(String) bs = relationship("B", back_populates="a") class B(Base): __tablename__ = 'b' id = Column(Integer, primary_key=True) a_id = Column(ForeignKey("a.id")) data = Column(String) a = relationship("A", back_populates="bs") e = create_engine("sqlite://", echo=True) Base.metadata.create_all(e) s = Session(e) b1 = B() a1 = A(bs=[b1]) s.add_all([a1, b1]) s.commit() b1.a del b1.a s.commit() assert b1.a is None ``` |