我是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文件。我没有在设置文件中指定NAME,因为我正在使用dj_database_url,根据Heroku教程。我很好奇为什么这在本地失败(为什么它需要NAME),而它在Heroku上成功编译。任何帮助将不胜感激。如果您有任何其他信息需要诊断问题,请告诉我。
最佳, 斯科特
答案 0 :(得分:0)
dj_database_url
使用环境变量DATABASE_URL
的值,该值在Heroku上设置,但可能未在您的本地环境中设置(除非您自己设置)。