1

我已经完成了我的第一个 Django 应用程序,并且在 Heroku 中遇到了迁移问题。我在本地使用 South 迁移,然后尝试将这些迁移移动到 Heroku 上的数据库。

当我跑的时候:

heroku run stentorian/manage.py syncdb migrate report

我收到以下错误:

['/app/stentorian', '/app/.heroku/venv/lib/python2.7/site-packages/pip-1.1-py2.7.egg', '/app', '/app/.heroku/venv/lib/python27.zip', '/app/.heroku/venv/lib/python2.7', '/app/.heroku/venv/lib/python2.7/plat-linux2', '/app/.heroku/venv/lib/python2.7/lib-tk', '/app/.heroku/venv/lib/python2.7/lib-old', '/app/.heroku/venv/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/app/.heroku/venv/lib/python2.7/site-packages', '/app/.heroku/venv/lib/python2.7/site-packages/PIL']
Error: Command doesn't accept any arguments

我已经对此进行了研究,但似乎无法找到解决此问题的方法。在此之前,我将 django-flaggit 应用程序安装到我的应用程序中,该应用程序不使用迁移,并且必须使用传统的同步数据库来在 Heroku 中设置表。我想知道这是否有影响。

如果有人对此问题有任何见解,将不胜感激。

4

1 回答 1

1

您在这里所做的实际上是连续调用两个不同的命令:syncdbmigrate.

south 的通常工作流程是运行 syncdb 以同步所有不支持 south 的应用程序,然后迁移以在支持 south 的应用程序上工作。实际上,如果您只是在安装了 south 的情况下运行 syncdb,它会告诉您哪些应用程序未同步并且必须迁移。

所以,总结一下:

heroku run stentorian/manage.py syncdb 
heroku run stentorian/manage.py migrate report
于 2012-07-13T23:57:57.787 回答