加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

在Django-South中,Pesky“Table’my_table’已经存在”

发布时间:2020-12-16 23:14:54 所属栏目:Python 来源:网络整理
导读:在Django-South: 我改变了我已成功运行myapp的初始迁移但出于某种原因,在我对模型进行了更改并转到 ./manage.py schemamigration myapp --auto./manage.py migrate myapp 我得到了很多追溯结束: (1050,"Table 'my_table' already exists") 经过大量的谷歌
在Django-South:
我改变了我已成功运行myapp的初始迁移但出于某种原因,在我对模型进行了更改并转到
./manage.py schemamigration myapp --auto
./manage.py migrate myapp

我得到了很多追溯结束:

(1050,"Table 'my_table' already exists")

经过大量的谷歌搜索,我发现并尝试了这个:

./manage.py migrate myapp --fake

然后我继续迁移它,但无济于事;同样的错误.

有什么建议?

解决方法

我刚刚得到同样的错误,并通过搜索找到了这个问题.

我的问题是我使用–initial标志创建的第二次迁移,即

$./manage.py startapp foo
$./manage.py schemamigration --initial foo
$./manage.py migrate foo

…对foo做一些改变……

$./manage.py schemamigration --initial foo

(哎呀!)

$./manage.py migrate foo

…我收到错误,迁移失败,因为在第二次迁移中,South正在尝试创建已创建的表.

在我的迁移文件夹中:

$ls foo/migrations
0001_initial.py   0002_initial.py

删除第二次迁移并使用正确的–auto标志重新导出第二次迁移:

$rm foo/migrations/0002_initial.py
$./manage.py schemamigration --auto foo
$./manage.py migrate foo

成功!

可能有其他事情导致此错误,但那是我的坏事!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读