2011-12-02 34 views
11

我最近开始挖掘到South文档,发现它有两种不同类型的迁移:South数据迁移与模式迁移相比有什么作用?

  • schemamigration
  • datamigration

由于我的无知的结果,我一直使用一切的架构迁移。换句话说,即使我有一些真正的“数据迁移”,我也只是使用South的schemamigration来转换数据(没有明显的后果)。

当我阅读文档时,我没有看到这种方法的错误。有人知道两种迁移之间的根本区别,以及坚持使用模式迁移可能会导致什么?

回答

5

每南部的主要开发人员:

您可以在这里看到的区别: https://bitbucket.org/andrewgodwin/south/src/b3ed126b19a2/south/v2.py

为表明,唯一的区别是,数据迁移不 干运行如果你有一个需要它的数据库(MySQL)。否则, 几乎没有什么区别,至少在目前 - 管理 命令不同,但(实质上是关于用户界面分离, )。

6

确实只有一种迁移,但有两个命令。 datamigration为您创建一个新的空白迁移填写,而schemamigration是一个可选的便利命令,它将尝试检测模式更改并自动创建迁移。

编辑:从http://south.aeracode.org/docs/commands.html#schemamigration

虽然迁移是真正的肉和南方的骨头,schemamigration是比较完全可有可无。这是一个实用程序,可以帮助您编写一些迁移(特别是那些更改模式的迁移);如果你喜欢,你可以忽略它,并写下你自己的一切,在这种情况下,我们祝你好运,并打字快乐。