django将新的ManyToManyField添加到现有数据库

Dan*_*Qiu 2 python database django django-south

使用django,我需要在现有模型中添加一个新字段,如ManyToManyField.如何使用South更新我的数据库?我试过了

python manage.py schemamigration appname --initial
Run Code Online (Sandbox Code Playgroud)

python manage.py migrate appname --fake
Run Code Online (Sandbox Code Playgroud)

但仍然收到错误信息'没有这样的表'.

我的数据库中有一些数据需要一些时间才能导入,所以我不想清除我的数据库.我不熟悉SQL语言,有没有方便的方法来解决这个问题?

Tim*_*ony 5

数据库当前反映的是没有新字段的模型,因此您需要首先创建初始迁移,而不需要在模型中使用新字段.完成该操作并创建初始0001迁移后,您可以添加新字段,运行

python manage.py schemamigration --auto appname
Run Code Online (Sandbox Code Playgroud)

这将创建创建新闻字段所必需的SQL,然后

pytho manage.py migrate
Run Code Online (Sandbox Code Playgroud)

实际运行迁移