Django South错误恢复:无此类索引

Django South错误恢复:无此类索引,django,Django,错误消息粘贴在下面。我有3个问题: []是什么意思?它在南方是SQL命令的特殊分隔符吗 我应该按照南方的指示恢复吗?我这样问是因为我在其他一些情况下确实遵循了南方恢复指示,把事情搞砸了好几次 帮助我理解错误发生的原因。我在这次迁移中所做的只是将一对一字段更改为普通字段 错误: comp\u app:0039\u auto\u chg\u field\u competition\u banner\u img\u del\u unique\u competition\u banner_ 致命错误-以

错误消息粘贴在下面。我有3个问题:

  • []
    是什么意思?它在南方是SQL命令的特殊分隔符吗

  • 我应该按照南方的指示恢复吗?我这样问是因为我在其他一些情况下确实遵循了南方恢复指示,把事情搞砸了好几次

  • 帮助我理解错误发生的原因。我在这次迁移中所做的只是将一对一字段更改为普通字段

  • 错误:

    comp\u app:0039\u auto\u chg\u field\u competition\u banner\u img\u del\u unique\u competition\u banner_
    致命错误-以下SQL查询失败:删除索引“comp_app_competition_d79c66e3”
    错误是:没有这样的索引:comp_app_competition_d79c66e3
    ! 在迁移的实际运行期间发现错误!流产。
    ! 因为您的数据库不支持运行
    ! 在事务中改变模式的语句,我们有
    ! 使其在迁移之间处于过渡状态。
    ! 您*可能*能够通过以下方式恢复:=在“comp_app_competition”(“banner_img_id”)上创建索引“comp_app_competition_d79c66e3”;[]
    =在“comp_app_competition”(“banner_img_id”)上创建唯一索引“comp_app_competition_banner_img_id”);[]
    ! 南方开发商对此感到遗憾,并将
    ! 喜欢温柔地劝你稍微考虑一下。
    ! 易于处理的DBMS(支持DDL事务的DBMS)
    ! 注意:导致迁移失败的错误还在后面。
    迁移错误:comp_app:0039_auto_chg_field_competition_banner_img_del_unique_competition_banner_
    数据库错误:没有这样的索引:comp_app_competition_d79c66e3
    
    事实证明,SQLite一开始并没有为一对一字段创建索引,但South认为它会创建索引。我怀疑数据库类型是我在使用South时遇到的许多其他错误的罪魁祸首


    但解决办法很简单。我进入迁移文件并删除前进和后退函数中的索引部分。就是这样。

    您正在运行什么数据库?简单的方法是从SQLite切换到PostgreSQL。Sqlite不支持您正在尝试执行的模式更改语句,您将无法正确修复它。@limelights,感谢您为我指明了正确的方向。请查看我的答案并自由编辑或评论。