首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQLAlchemy:多个连接路径上的组合后向引用

SQLAlchemy:多个连接路径上的组合后向引用
EN

Stack Overflow用户
提问于 2013-06-24 02:36:03
回答 2查看 722关注 0票数 0

假设我们有一个包含'HomeAddressID‘和'WorkAddressID’列的'People‘表。

我们为表'Addresses‘定义了一个多连接路径关系,如下所示:

代码语言:javascript
复制
HomeAddress = relationship('Addresses', foreign-keys=[HomeAddressID])
WorkAddress = relationship('Addresses', foreign-keys=[WorkAddressID])

现在我希望我的类'Addresses‘有一个属性' people’,它将列出与这个地址相关的所有人,无论它是家庭还是工作。

我该怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2013-06-24 13:22:31

要做到这一点,最简单的通用方法是为person<->地址映射建立一个映射表,其中包含"person id,address id,type“列,否则在DB端就会变得有点繁重。

票数 0
EN

Stack Overflow用户

发布于 2014-02-27 21:51:59

未经测试,但您可以添加一个backref:

代码语言:javascript
复制
HomeAddress = relationship('Addresses', foreign_keys=[HomeAddressID],
backref='home_address')

WorkAddress = relationship('Addresses', foreign_keys=[WorkAddressID], backref='work_address')

然后您可以执行以下操作:

代码语言:javascript
复制
Addresses.home_address.all() or Addresses.work_address.all()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17264006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档