q3d*_*q3d 4 python sqlalchemy database-migration sqlalchemy-migrate pyramid
我在Gentoo下使用"vanilla"Pyramid 1.4,我希望对我的表进行更改并提交它们而不必删除表(及其所有数据),然后重新创建它.我听说过这个解决方案是架构迁移.
作为Django的长期用户,我一直在使用django-south,但现在我正在使用Pyramid我找不到任何方法来处理迁移.我读过sqlalchemy-migrate,看起来非常好,但我不确定如何让它与金字塔一起工作.
有没有办法在Pyramid 1.4中处理模式迁移?如果使用sqlalchemy-migrate是明智的选择,我如何让它与金字塔一起使用?
干杯.
正如马丁所说,我建议你去Alembic进行迁移.它来自SqlAlchemy的创建者,应该与任何SqlAlchemy变化保持同步.
至于将它连接到您的框架中,这取决于您.我在Bookie中通过更新Alembic中的env.py来加载我的Pyramid .ini文件.您可以在此处查看代码中的更改:
https://github.com/mitechie/Bookie/blob/develop/dbversions/env.py#L8
这也会加载模型,以便您可以使用自动生成的更改.
然后,我通过Makefile中的帮助程序控制迁移,允许我生成,更新等.
https://github.com/mitechie/Bookie/blob/develop/Makefile#L67
这些可能会变成金字塔p*命令,但我没有这样做. http://pyramid.readthedocs.org/en/latest/narr/commandline.html#writing-a-script