2013-02-16 81 views
0

我在我的django应用程序中做了很多更改,并且在本地工作时,我重置了数据库,删除了迁移并重新设置了南,重新创建了所有内容并且工作正常。 尝试使用滴速数据库之后做的Heroku, 相同时:看Heroku的迁移列表时无法从heroku删除旧的南迁移

heroku run ./manage.py reset south 

,然后推Django应用程序:

heroku pg:reset DATABASE 

,并用正在重置南使用:

heroku run ./manage.py migrate --list 

我仍然可以看到所有的旧imgration的, 虽然他们empty--在没有*( ) 所以即使做

heroku run python ./manage.py migrate accounts --fake 

后,我仍然得到迁移错误:

DatabaseError at /admin/accounts/userprofile/ 

****relation "accounts_userprofile" does not exist 
LINE 1: SELECT COUNT(*) FROM "accounts_userprofile"**** 

我能做些什么来解决呢?有没有一种方法可以在heroku中删除旧的迁移,并且就像在本地重新开始时一样简单地完成呢? 还是他们的任何其他解决方案?

+1

我认为'--fake'用于数据库表已经存在并且不再需要实际迁移真实数据库。如果表不存在,你应该运行'migrate'而不用'--fake'。 – 2013-02-16 20:43:10

+0

感谢:)网站又回来了! – yeinhorn 2013-02-16 21:46:29

+0

太好了。我将添加这个答案。 – 2013-02-17 05:52:46

回答

1

--fake用于数据库表已存在且不再需要实际迁移实际数据库的情况。由于表格不存在,您应该运行migrate而不使用--fake