我在试着了解是否有可能与Sqlalchemy做些什么,或者如果我正在考虑错误的方式。作为一个例子,说我有两个(这些只是例子)类:Python sqlalchemy动态关系
class Customer(db.Model):
__tablename__ = 'customer'
id = Column(Integer, primary_key=True)
name = Column(String)
addresses = relationship('Address')
class Address(db.Model):
__tablename__ = 'address'
if = Column(Integer, primary_key=True)
address = Column(String)
home = Column(Boolean)
customer_id = Column(Integer, ForeignKey('customer.id'))
后来我想执行一个查询,得到了客户和只是他们的家庭住址。是否有可能做的是这样:
db.session.query(Customer).join(Address, Address.home == True)
请问上面进一步细化/限制参加这样的结果只会得到的住址吗?
由于提前, 道格
感谢您的答复。我应该更清楚我的问题,这两个类只是我用来说明问题的例子。示例类建模一对多关系,ForeignKey指定连接。如果它执行简单的查询以获取客户,则地址关系集合也包含该客户的所有地址。但是我想要的是重写或添加联接条件,这样我就可以查询来获得客户,但关系集合只有一个元素 - 家庭地址。 –