将Django部署到Heroku

0 投票
2 回答
658 浏览
提问于 2025-04-17 15:50

大家好,我按照这里的指南把Django部署到Heroku上:

https://devcenter.heroku.com/articles/django

但是我的服务器在Heroku上一直崩溃,出现了这个错误,大家有什么想法或者建议都非常感谢。

2013-02-12T19:27:40+00:00 app[web.1]:   File "/app/.heroku/python/lib/python2.7/site-  packages/django/utils/importlib.py", line 35, in import_module
2013-02-12T19:27:40+00:00 app[web.1]:     __import__(name)
2013-02-12T19:27:40+00:00 app[web.1]:   File "/app/eduudle/settings.py", line 15, in   <module>
2013-02-12T19:27:40+00:00 app[web.1]:     DATABASES = { 'default': {dj_database_url.config()}}
2013-02-12T19:27:40+00:00 app[web.1]: TypeError: unhashable type: 'dict'
2013-02-12T19:27:41+00:00 heroku[web.1]: Process exited with status 1
2013-02-12T19:27:41+00:00 heroku[web.1]: State changed from starting to crashed

2 个回答

2

文档建议数据库的格式应该是

DATABASES['default'] = dj_database_url.config()

而不是

DATABASES['default'] = {dj_database_url.config()}

1

我找到了问题所在,文档的日期已经过时,所以根据它的内容来做是行不通的。

https://github.com/heroku/heroku-buildpack-python/issues/45

我最开始的做法是可以的,但我加了太多的花括号。

所以不要用

 DATABASES = { 'default': {dj_database_url.config()}}

而是用

 DATABASES = { 'default': dj_database_url.config()}

撰写回答