小编Squ*_*oss的帖子

从SQLAlchemy邻接列表关系构造整个树

我有一个类Node,其自我引用映射'children'(backref'parent')表示SQLAlchemy中的树,我想选择整个树.如果我做

session.query(Node).all()
Run Code Online (Sandbox Code Playgroud)

然后每次访问node.children都会触发一个select.如果我加入了加载

session.query(Node).options(joinedload_all('children')).all()
Run Code Online (Sandbox Code Playgroud)

然后发出的sql有一个不必要的表连接,因为我想要整个树(所有节点).有没有办法在SA中执行此操作,还是应该在SA外部自己构建树?

python sqlalchemy

9
推荐指数
1
解决办法
1563
查看次数

标签 统计

python ×1

sqlalchemy ×1