我有两个具有一对多关系的表。
我想找到类型为“abc”的所有子行
class Parent(base):
__tablename__ = "parent"
id = Column("id", String, primary_key=True)
parent = relationship("Child", back_populates="child")
class Child(base):
__tablename__ = "child"
id = Column("id", Integer, primary_key=True)
name = Column(String)
tid = Column(String, ForeignKey("parent.id"))
child = relationship(Tenant, back_populates="parent")
type = Column(String)
return self.session.query(Parent.parent).filter_by(Parent.parent.type == "abc").all()
它给了我错误,因为与 Parent.parent 关联的 InstrumentedAttribute' 对象和 'Comparator' 对象都有一个属性 'type'
如果我这样做
return self.session.query(Parent).filter(Parent.parent.any(Child.type == type)).all()
它也给了我所有其他类型的行