【问题标题】:Pyramid schema migrations金字塔模式迁移
【发布时间】:2012-10-03 19:13:26
【问题描述】:

我在 Gentoo 下使用“vanilla”Pyramid 1.4,我想对我的表进行更改并提交它们,而不必删除表(及其所有数据)然后重新创建它。我听说解决方案是架构迁移。

作为 Django 的老用户,我一直在使用 django-south,但现在我使用的是 Pyramid,我找不到任何处理迁移的方法。我读过关于 sqlalchemy-migrate 的文章,它看起来非常好,但我不确定如何让它与 Pyramid 一起使用。

有没有办法在 Pyramid 1.4 中处理架构迁移? 如果使用 sqlalchemy-migrate 是明智的选择,我如何让它与 Pyramid 一起使用?

干杯。

【问题讨论】:

    标签: python sqlalchemy pyramid database-migration sqlalchemy-migrate


    【解决方案1】:

    虽然这并不能直接回答您的问题:您是否考虑过 Alembic,而是由 Mike Bayer 本人(SQLAlchemy 的作者)提供的一种新的 SQLAlchemy 迁移工具? sqlalchemy-migrate 的开发似乎在一月份就停止了,而 Alembic 却相当活跃。

    【讨论】:

      【解决方案2】:

      正如 Martin 所说,我建议您使用 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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-07-19
        • 2021-05-14
        • 2013-05-09
        • 1970-01-01
        • 2012-05-09
        • 2019-09-14
        • 2017-06-13
        • 1970-01-01
        相关资源
        最近更新 更多