【发布时间】:2012-10-11 15:45:09
【问题描述】:
我有 2 个类作为多对多关系 A 和 B,在此处缩短以显示基本关系:
class A(Base):
bclss = relationship("B",
backref = "aclss",
secondary = "a_b_association",
collection_class = attribute_mapped_collection('identifier'))
a_b_association_table = Table('a_b_association', Base.metadata,
Column('a_id', Integer, ForeignKey('a.id')),
Column('b_id', Integer, ForeignKey('b.id')) )
所以 A 的实例可以添加 B 的实例,并在以标识符为键的字典中引用...但是 B 实例仅包含其 a 对象的 [列表],我想要一个镜像接口来拉出a 实例通过字典中的标识符键与 b 实例相关。镜像 b 上的关系语句并引用相同的关联表不起作用,所以我正在考虑一个我不完全知道如何在 sqlalchemy 中实现的领域。
所以,即使这不是 100% 清楚,我的问题是:
如何在多对多关系中相关的两个项目上获取字典、属性映射集合,其中每一方都可以通过字典键提取相关项目,而不是我得到的:不对称的一侧字典/另一侧列表界面。
【问题讨论】:
标签: python orm sqlalchemy relationship