2

我是 Heroku 和 Django/Python 的新手。我希望找到我遇到的问题的答案。我一直在关注 Heroku 开发中心的入门教程:https ://devcenter.heroku.com/articles/django

运行命令并将应用程序代码推送到 Heroku 时,一切正常。例如,当我运行 CLI 命令“heroku run python manage.py syncdb”时,一切都按预期工作,没有错误。但是,当我尝试在本地运行相同的命令“python manage.py syncdb”时,我得到以下输出和错误:

    Scotts-MacBook-Pro:bonavina scottklieberman$ python manage.py syncdb
    Traceback (most recent call last):
    File "manage.py", line 10, in <module>
    ...
    File "/Library/Python/2.7/site-  packages/django/db/backends/postgresql_psycopg2/base.py", line 162, in _cursor
    raise ImproperlyConfigured("You need to specify NAME in your Django settings file.")
    django.core.exceptions.ImproperlyConfigured: You need to specify NAME in your Django settings file.

然后我回去检查了我的 settings.py 文件。根据 Heroku 教程,我没有在设置文件中指定 NAME,因为我正在使用 dj_database_url。我很好奇为什么这在本地失败(为什么它需要 NAME),而它在 Heroku 上编译成功。任何帮助将不胜感激。如果您需要任何其他信息来诊断问题,请告诉我。

最好的,斯科特

4

1 回答 1

0

dj_database_url使用环境变量的值,该值DATABASE_URL在 Heroku 上设置,但可能未在您的本地环境中设置(除非您自己设置)。

于 2012-07-23T21:57:37.887 回答