【发布时间】:2014-05-12 14:34:48
【问题描述】:
我正在阅读South's documentation about how to convert an app。
我不理解示例 ./manage.py migrate myapp 0001 --fake 中的 0001 部分,因为文档中似乎没有关于这个 4 位数字含义的参考。
谁能给我解释一下?
【问题讨论】:
标签: python django migration django-south
我正在阅读South's documentation about how to convert an app。
我不理解示例 ./manage.py migrate myapp 0001 --fake 中的 0001 部分,因为文档中似乎没有关于这个 4 位数字含义的参考。
谁能给我解释一下?
【问题讨论】:
标签: python django migration django-south
根据documentation,它只是一个快捷方式,可以节省打字。
如果您检查您的migrations 目录,您会看到一个名为:0001_migration_name.py 的python 文件。 South 通过仅指定数字(迁移名称的前缀)为您提供了一种运行迁移的方法。
请注意,如果您在进行多次迁移时运行 ./manage.py migrate myapp 000,例如:
0001_initial_migration
0002_add_username
您会收到错误消息,因为 south 不会通过您提供的前缀识别单个唯一迁移。
仅供参考,这里是guess_migration() 的源代码,它尝试通过前缀匹配迁移。
【讨论】: