python - 如何在sqlalchemy模型中获取panrent类中子类的数据?
问题描述
我有一个称为父模型的模型:
class Parent(Base):
__tablename__ = 'parent'
id = Column(Integer, primary_key=True)
name = Column(String)
children = relationship("Child", back_populates="parent")
另外,我有一个子类,它具有父模型的外键,它还与另一个表有关系:
class Child1(Base):
__tablename__ = 'child_1'
id = Column(Integer, primary_key=True)
example_field = Column(String)
class Child2(Base):
__tablename__ = 'child_2'
id = Column(Integer, primary_key=True)
link = Column(String)
parent_id = Column(Integer, ForeignKey('parent.id'))
child_1_id = Column(Integer, ForeignKey('child_1.id'))
parent = relationship("Parent", back_populates="children")
现在我想在获取父表的行时,如果“child_1_id”等于“child 1 table”的特定id,则获取子表的链接值。
例如,当:
parents = session.query(Parent).all()
我希望链接列作为父记录中的列属性或混合属性等。
我能做些什么?如何传递 child_1_id 并应用此条件?