有没有一种方法可以打印由sqlalchemy创建的查询
emp = session.query(Employee).filter(*empfilters).order_by(Employee.Name).all()
我曾尝试从SO中执行str(emp)
,emp.statement.compile(dialect=postgresql.dialect(), compile_kwargs={"literal_binds": True})
或其他解决方案,但无法复制任何内容。这里的*empfilters
再次来自其他表(一对多连接的一部分),所以我想检查它到底被编译成什么。
如果尝试以上操作,则错误是-'list' object has no attribute 'statement'
基于@ ac24的建议,从查询中删除了.all()
,然后由print emp
完成了技巧。