Sqlalchemy 当一个表中的两列的外键引用同一个表时,如何连接它们?
我有两个表,一个叫做Sqlalchemy 当一个表中的两列的外键引用同一个表时,如何连接它们?,sqlalchemy,Sqlalchemy,我有两个表,一个叫做位置,另一个叫做工作包,如图所示: 我希望能够查询work\u packages表中的一行,并获取与外键location\u a和location\u z关联的列。我所尝试的一切都导致了错误 我当前的模型如下所示: 这就是我一直在做的一个查询: 执行查询: 现在,我尝试了模型和查询的一些变体,但没有任何效果。我得到了一些错误,比如“Column没有属性映射器”和许多不同色调的“AmbiguousForeignKeyError” 错误消息表明,我需要更具体地说明这两个表
位置
,另一个叫做工作包
,如图所示:
我希望能够查询work\u packages
表中的一行,并获取与外键location\u a
和location\u z
关联的列。我所尝试的一切都导致了错误
我当前的模型如下所示:
这就是我一直在做的一个查询:
执行查询:
现在,我尝试了模型和查询的一些变体,但没有任何效果。我得到了一些错误,比如“Column没有属性映射器”和许多不同色调的“AmbiguousForeignKeyError”
错误消息表明,我需要更具体地说明这两个表应该如何联接,但如果要以正确的方式联接,我就不知所措了
真的需要一些指导,谢谢。您是否尝试在关系中明确设置primaryjoin?例如:
a_side_name = relationship('locations', primaryjoin='locations.uid==work_packages.location_a')
z_side_name = relationship('locations', primaryjoin='locations.uid==work_packages.location_z')