【发布时间】:2023-01-18 05:15:37
【问题描述】:
我有以下模型,其中我的两个模型共享一个 outside_id 到我无权访问的某个表,但它们是通过该表连接的。所以他们不是传统的多对多关系。我找到的唯一解决方案是创建一个主键为 outside_id 的表,并用它来连接这两个关系。
它增加了很多复杂性,因为我唯一需要的是能够在 A 中急切地从 B 加载数据并在我将其转储到 json 时访问它。有更简单的方法吗?
class B(model):
id = Column(Integer(), primary_key=True, nullable=False)
outside_id = Column(String())
class A(model):
id = Column(Integer(), primary_key=True, nullable=False)
outside_id = Column(String())
relationship(
"B",
foreign_keys=[outside_id],
primaryjoin="A.outside_id==B.outside_id",
viewonly=True,
)
【问题讨论】:
标签: python sql postgresql sqlalchemy