我刚从金字塔教程开始构建我的webapp。
当我将一个项目添加到我的数据库时,它会被正确保留,但是当我在金字塔中更改某些内容并需要重新启动服务器时
$VENV/bin/pserve development.ini --reload
我所有的改变都丢失了。有谁知道为什么会这样?
我更改了initialize_db.py脚本以构建演示数据库,并将sessionmaker更改为
session = scoped_session(sessionmaker(extension=ZopeTransactionExtension('changed')))
我已经尝试了session.commit()
和session.flush()
,但没有运气。
答案 0 :(得分:2)
你应该也配置了pyramid_tm
(事务管理器);它是实际提交更改的那个。现在看起来你没有提交更改/只是重复使用同一个脏的未提交会话从请求到另一个。
E.g。如果您使用pcreate
脚手架,wiki2
,assumes使用alchemy
创建了最小项目。
无论如何,请确保development.ini
that you're using contains
pyramid.includes =
pyramid_debugtoolbar
pyramid_tm <--- this here