【发布时间】:2019-09-12 18:41:26
【问题描述】:
我正在尝试在 Heroku 上部署我的 Django webapp。每次我尝试部署时都会遇到同样的错误。
导入错误: 您的 WhiteNoise 配置与 WhiteNoise v4.0 不兼容 这可以通过遵循以下升级说明进行修复: http://whitenoise.evans.io/en/stable/changelog.html#v4-0 !运行“$ python manage.py collectstatic --noinput”时出错。 有关详细信息,请参阅上面的回溯。 您可能需要更新应用程序代码来解决此错误。 或者,您可以为此应用程序禁用 collectstatic: $ heroku 配置:设置 DISABLE_COLLECTSTATIC=1 https://devcenter.heroku.com/articles/django-assets !推送被拒绝,无法编译 Python 应用程序。 !推送失败
我访问了链接以按照文档建议进行更改。它要求我从 wsgi.py 文件中删除任何提及,我必须将其添加到 settings.py 中的中间件并更改静态存储。
#settings.py
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware',
.
.
.
.
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
我不确定是什么导致了这个错误。应用了白噪声更新,并且静态文件也已就位。
该项目在本地服务器上就像一个魅力,但我无法部署它。 提前致谢!
【问题讨论】:
-
你对
wsgi.py所做的修改提交到git了吗? -
如果您的项目在本地运行但在 Heroku 上无法运行,则表明您有未提交的更改。 “git heroku push master”是您在提交之后运行的,它不会自动为您提交更改。
-
我尝试在推送它之前提交,然后抛出相同的错误,然后是几个错误(收集静态时出错)