【发布时间】:2011-04-15 17:47:05
【问题描述】:
我有一个类节点,它有一个自引用映射'children'(backref'parent'),代表 SQLAlchemy 中的一棵树,我想选择整个树。如果我这样做了
session.query(Node).all()
然后每次访问 node.children 都会触发一次选择。如果我做一个联合加载
session.query(Node).options(joinedload_all('children')).all()
然后发出的 sql 有一个不必要的表连接,因为无论如何我都想要整个树(所有节点)。有没有办法在 SA 中做到这一点,还是我应该在 SA 之外自己构建树?
【问题讨论】:
标签: python sqlalchemy