0
我是Heroku的新手,我被要求去看看那里的某个项目(他们以前的供应商不可用)。Heroku Django Collectstatic导致错误
这是一个Django 1.4项目。
为了解我是否已经下载了该项目并将其加载到新的Heroku应用程序中。工作正常,但由于错误,我必须设置disable_collectstatic = 1。原始应用程序使用亚马逊s3存储桶来存储静态文件,这样我就可以使用这些存储并且一切正常。
我现在正在尝试设置我自己的s3存储桶并让它在那里创建静态文件。我得到以下回溯
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 443, in execute_from_command_line
utility.execute()
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 382, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 261, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 70, in load_command_class
return module.Command()
File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 57, in __init__
self.storage.path('')
File "/app/.heroku/python/lib/python2.7/site-packages/django/utils/functional.py", line 184, in inner
self._setup()
File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/staticfiles/storage.py", line 279, in _setup
self._wrapped = get_storage_class(settings.STATICFILES_STORAGE)()
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/files/storage.py", line 277, in get_storage_class
raise ImproperlyConfigured('Error importing storage module %s: "%s"' % (module, e))
django.core.exceptions.ImproperlyConfigured: Error importing storage module storages.backends.s3boto: "cannot import name force_bytes"
有趣的是我得到同样的错误ImproperlyConfigured如果我试图从我的“新”项目准入管理。
这是什么原因导致我错过了什么?
Django 1.4很旧。自django在1.4之后Boto已经走过了很长的路。虽然它的更新版本与django的较新版本兼容,但它可能不是这种旧版本的情况。看看你能否找到最初使用的版本并安装它。 – e4c5
我在'requirements.txt'中有'boto == 2.6.0',它是2012年的版本 – HenryM