我购买了一项外包服务,以便在 django 中开发一个网站,以部署在 heroku 和 AWS S3(boto 包)中。不幸的是,尽管被问到,开发人员没有评论代码,并且没有完成项目以跟进更大的客户。我聘请了另一位 django “专家”来修复未开发的部分,他想(过度)收取部署测试费用,我认为这对于良好实践来说应该是正常的事情!我正在制定自己的预算,需要自己解决。
我能够使项目在本地运行,并使自己成为尚未完全开发的前端模板,但是在我自己的暂存环境中部署代码时遇到了问题。
我在我的凭证下设置了一个暂存环境,以检查一切是否正常,然后再投入生产。
不过,我想我差不多到了:
heroku run python manage.py migrate --all --noinput --app my-app-staging
在控制台中生成:
Running `python manage.py migrate --all --noinput` attached to terminal... up, run.4833
DatabaseError:关系“south_migrationhistory”不存在第 1 行:...gration”,“south_migrationhistory”。“applied” FROM “south_mig...
在浏览器中:
DatabaseError at /
relation "django_site" does not exist
LINE 1: ..."django_site"."domain", "django_site"."name" FROM "django_si...
^
Request Method: GET
Request URL: http://my-app-staging.herokuapp.com/
Django Version: 1.5.6
Exception Type: DatabaseError
Exception Value:
relation "django_site" does not exist
LINE 1: ..."django_site"."domain", "django_site"."name" FROM "django_si...
^
Exception Location: /app/.heroku/python/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py in execute, line 5
我检查了我的设置,它们看起来还不错:我检查了 AWS S3 存储桶,它能够在那里写入;heroku 控制台中的设置显示数据库已创建。
我跟着: Heroku 创建了表,但是当我迁移时,他说没有创建
但看起来我的 locals.py 也可以,并且在我的本地 git 分支中 .gitignore 将排除 db.sqlite
我的 git 和 heroku ssh 密钥已生成并添加,所以我不认为这是身份验证问题。
我如何检查数据库是否正确连接到 django 项目并且我没有失效?您能否帮助进行汇报以了解此错误的含义以及如何解决?
非常感谢。