南迁移myapp 0001 - 假

时间:2014-05-12 14:34:49

标签: python django migration django-south

我正在阅读South's documentation about how to convert an app

我不理解示例0001中的./manage.py migrate myapp 0001 --fake部分,因为似乎文档中没有关于此4位数字含义的引用。

有人可以向我解释一下吗?

1 个答案:

答案 0 :(得分:1)

根据documentation,它只是一种保存输入的快捷方式。

如果检查migrations目录,则会看到一个名为0001_migration_name.py的python文件。 South仅通过指定数字(迁移名称的前缀)为您提供了一种运行迁移的方法。

请注意,如果您在进行多次迁移时运行./manage.py migrate myapp 000,例如:

0001_initial_migration
0002_add_username

您会收到错误,因为south无法通过您提供的前缀识别单个唯一身份转移。

仅供参考,这是guess_migration()的源代码,它尝试通过前缀匹配迁移。