3

我已经在本地服务器上使用 south 成功同步了我的数据库。我在 Heroku 中使用 south 时遇到问题。当我跑

git add app/migrations/*

git commit -m 'adding new migrations'

heroku run python manage.py migrate app

我收到一个数据库错误。关系字段已存在。

任何想法为什么这不起作用?此外,每次我的模型之一发生更改时,我是否需要在本地和生产环境中运行迁移?谢谢阅读。

4

2 回答 2

6

看来您的数据库中已经有该应用程序的字段。尝试通过运行来伪造迁移

heroku run python manage.py migrate app --fake
于 2012-04-22T19:35:09.750 回答
1

在 Heroku 上执行此操作:

heroku run python manage.py migrate YOUR_APP_NAME 0001 --fake

然后

heroku 运行 python manage.py 迁移 YOUR_APP

为我解决了这个问题。只是运行 migrate 会出错,因为某种原因 south 也会尝试运行初始迁移。所以我伪造了那个,然后运行第一个实际迁移(0002)效果很好。

于 2013-03-24T11:58:25.077 回答