使用sqlalchemy 0.6记录查询
在使用turbogears 2.1和sqlalchemy 0.7的时候,控制台里的查询会被记录到标准输出(stdout)中。但是我需要把版本降级到0.6后,这些查询就不再显示了。查看文档发现日志记录的部分似乎是一样的,我在更新日志中也找不到任何相关信息。请问在sqlalchemy 0.6中怎么才能记录日志呢?
补充说明 发现DBSession.bind.echo
的设置是False
。如果我把它改成True
,就可以正常工作了。请问怎么才能正确设置这个选项(我已经在model/__init__.py
中修改了engine.echo = True
)?
2 个回答
5
我对TurboGears不太了解,不过你需要确保引擎的echo
设置是True
,比如这样:
engine = sqlalchemy.create_engine('sqlite:///:memory:', echo=True)
默认情况下,echo
设置是False
,所以查询不会记录到标准输出(stdout)上。可能TurboGears对这两个SQLAlchemy版本的配置方式不同。
3
你的配置文件应该包含指定的选项。请在 development.ini
文件中查找这些选项。
sqlalchemy.echo = true
sqlalchemy.echo_pool = true