У меня есть класс Node с самореференциальным отображением 'children' (backref 'parent'), представляющим дерево в SQLAlchemy, и я хочу выбрать все дерево. Если я сделаю
session.query(Node).all()
тогда каждый доступ к node.children вызывает выбор. Если я делаю совместную нагрузку
session.query(Node).options(joinedload_all('children')).all()
тогда в выданном sql есть ненужное объединение таблиц, так как я в любом случае хочу все дерево (все узлы). Есть ли способ сделать это в SA или я должен просто построить дерево самостоятельно вне SA?