【问题标题】:Using South migrations with Heroku在 Heroku 中使用南迁移
【发布时间】:2012-05-03 11:00:10
【问题描述】:

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

git add app/migrations/*

git commit -m 'adding new migrations'

heroku run python manage.py migrate app

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

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

【问题讨论】:

    标签: python django heroku django-south


    【解决方案1】:

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

    heroku run python manage.py migrate app --fake

    【讨论】:

    • 谢谢。所以为了将来参考,下次我是否必须在本地和生产(Heroku)环境中运行迁移?
    【解决方案2】:

    在 Heroku 上执行此操作:

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

    然后

    heroku 运行 python manage.py 迁移 YOUR_APP

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

    【讨论】:

      猜你喜欢
      • 2014-07-21
      • 1970-01-01
      • 2012-11-21
      • 2013-01-02
      • 2011-04-03
      • 2012-09-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多