sau*_*ook 5 django heroku django-settings django-celery kombu
我正在按照本教程进行操作,以便在heroku上运行celery和django.
但是,当我输入worker的指定代码时,我在日志中收到此错误:
2011-12-22T05:31:56+00:00 heroku[web.1]: Starting process with command `python canada/manage.py run_gunicorn -b "0.0.0.0:47336" -w 3`
2011-12-22T05:31:56+00:00 app[web.1]: Unexpected error: (<type 'exceptions.NameError'>, NameError("name 'DATABASES' is not defined",), <traceback object at 0x11a9560>)
2011-12-22T05:31:56+00:00 app[web.1]: Traceback (most recent call last):
2011-12-22T05:31:56+00:00 app[web.1]: File "canada/manage.py", line 11, in <module>
2011-12-22T05:31:56+00:00 app[web.1]: import settings
2011-12-22T05:31:56+00:00 app[web.1]: File "/app/canada/settings.py", line 51, in <module>
2011-12-22T05:31:56+00:00 app[web.1]: CELERY_RESULT_DBURI = DATABASES['default']
2011-12-22T05:31:56+00:00 app[web.1]: NameError: name 'DATABASES' is not defined
2011-12-22T05:31:57+00:00 heroku[slugc]: Slug compilation finished
2011-12-22T05:31:57+00:00 heroku[web.1]: State changed from starting to crashed
2011-12-22T05:31:58+00:00 heroku[web.1]: Process exited
Run Code Online (Sandbox Code Playgroud)
我的settings.py看起来像
import djcelery
djcelery.setup_loader()
BROKER_BACKEND = "djkombu.transport.DatabaseTransport"
CELERY_RESULT_DBURI = DATABASES['default']
...
Run Code Online (Sandbox Code Playgroud)
当我在添加此行之前同步时CELERY_RESULT_DBURI = DATABASES['default'],它运行正常.根据该文件
部署Django应用程序时,编译过程会将以下代码附加到settings.py以使用DATABASE_URL环境变量:
Heroku正在DATABASES您的末尾添加配置settings.py,因此当您DATABASES在settings.py中引用时,它不存在.
您可以DATABASES在自己的文件中复制Heroku 设置(它只是DATABASE_URL从env中读取,请参阅:django-heroku-template)或使用您自己的buildpack.
| 归档时间: |
|
| 查看次数: |
4491 次 |
| 最近记录: |