【问题标题】:Django 1.6 South Nothing to migrateDjango 1.6 South 没有什么可迁移的
【发布时间】:2014-08-25 13:59:51
【问题描述】:

我有一个项目设置使用南进行迁移。到目前为止,我们已经对模型进行了几次更改,并且没有遇到任何问题。刚才我去向我的一个模型添加一个字段,但我在让它正确迁移时遇到了一些麻烦。更改模型后我运行:

python manage.py schemamigration MyApp --auto

哪个输出这个:

(django_env) C:\Work_Repos\WebWorkspace\Support_Site\supportsite>python manage.py schemamigration MyApp --auto
 + Added field parts_only_notes on MyApp.ProblemTicket
 + Added field hdd_swap on MyApp.ProblemTicket
 + Added field hdd_swap_old_sn on MyApp.ProblemTicket
 + Added field hdd_swap_new_sn on MyApp.ProblemTicket
 + Added field traq_rma on MyApp.ProblemTicket
 + Added field mail_tracking_number on MyApp.ProblemTicket
 + Added field company on MyApp.Person
Created 0004_auto__add_field_problemticket_parts_only_notes__add_field_problemticke.py. You can now apply this migration with: ./manage.py migrate MyApp

这似乎没问题。虽然其中一些领域已经迁移进来,但它们出现了很奇怪。

然后我跑了:

python manage.py migrate MyApp

然后得到这个:

Running migrations for MyApp:
- Nothing to migrate.
 - Loading initial data for MyApp.
Installed 0 object(s) from 0 fixture(s)

所以它不会完成迁移。现在,如果我尝试转到管理页面并拉出有问题的模型,我会得到 Column Not Found Exception

我需要做什么才能完成迁移?

【问题讨论】:

  • 它重新添加了一些字段的事实确实很奇怪。一些故障排除问题:您是否更改了模型的名称?您是否指向正确的数据库?如果您查看之前的迁移文件,是否给您任何线索?迁移 0004 是否记录在数据库中?
  • 好吧,似乎以前的迁移没有正确应用(正如您提到的一些字段已经迁移)。在创建新的架构迁移之前,您应该确保已应用所有迁移。
  • 模型名称没有改变。是的,指向正确的分贝。之前的迁移是由我的合作伙伴执行的。我想知道当这种情况发生时,迁移 .py 文件是否没有被添加到我们的仓库中。如果是这种情况(以前的迁移是在 db 上执行的,但不是由我执行的,而且我从来没有在本地下载该文件)会导致迁移被搞砸吗?
  • @ambi 所有旧迁移都已正确应用。 (尽管是我的搭档而不是我)我知道他们是因为我正在开发依赖于他们的功能。
  • 查看您数据库中的migrations 表并找出已应用的迁移。 Nothing to migrate 消息表示已经应用了一些迁移号 0004..

标签: python django django-south


【解决方案1】:

您的合作伙伴似乎创建了另一个 0004 迁移,其 .py 文件不知何故丢失了,但它已应用于 DB。这就是您在新迁移中使用旧模型的原因(因为它们不在 0003 迁移中),这也是 South 认为“没有什么可迁移”的原因(因为已经应用了另一个 0004 迁移)。

您可以向您的合作伙伴索要缺少的迁移文件或删除您的新模型,创建一个新的 0004 迁移(可能与您的合作伙伴相同),然后重新添加您的模型并创建一个新的 0005 迁移并应用它。

【讨论】:

    猜你喜欢
    • 2013-09-01
    • 2012-08-06
    • 2012-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-26
    • 2011-09-28
    • 1970-01-01
    相关资源
    最近更新 更多