【发布时间】:2011-05-09 02:30:13
【问题描述】:
我正在使用 sqlalchemy 编写一个 Web 应用程序。在网站未投入生产的第一阶段开发过程中,一切都很顺利。我可以通过简单地删除旧的 sqlite 数据库并从头开始创建一个新数据库来轻松更改数据库架构。
现在网站正在生产中,我需要保留数据,但我仍然希望通过轻松地将数据库转换为新架构来保持我原来的开发速度。
假设我有版本 50 的 model.py 和版本 75 的 model.py,描述了数据库的架构。在这两个模式之间,大多数更改都是微不足道的,例如,使用默认值声明了一个新列,我只想将此默认值添加到旧记录中。
最终,一些更改可能并非微不足道,需要进行一些预先计算。
您如何(或将)如何处理快速变化的 Web 应用程序,例如每天使用一两个新版本的生产代码?
顺便说一句,如果这有什么不同的话,该网站是用 Pylons 编写的。
【问题讨论】:
-
"那么值得使用 migrate 吗?"应该是一个单独的问题。你有一个关于如何迁移的答案。询问 sqlalchemy-migrate 的用例和您的具体用例比这个一般问题更具体。
-
好的,所以我需要提出另一个关于迁移的问题,以便知道接受哪个答案。
-
@ascobol:“关于迁移的另一个问题,以便知道接受哪个答案”。错误的。你在这里有答案。 “工具[X]值得吗?”与“我如何迁移?”无关。你有“如何?”的答案。询问一种特定工具的价值与“如何?”无关。
-
@ascobol:也许您不相关的问题是“为什么不迁移工作?”不是“迁移值得吗?”这 - 也 - 与“如何?”无关
-
@ascobol:“我需要知道一个工具是否合适”。你被告知这是合适的。本题结束。开始另一个问题,说明您在使用该工具时遇到的具体问题。不相关。
标签: python sqlalchemy pylons data-migration migrate