尝试使用白噪声并得到以下“错误ImportError:没有名为'whitenoise.middleware'的模块”

时间:2016-04-05 17:29:16

标签: python django heroku

我试图遵循whitenoise指令。我从我的requirements.txt安装它以下是我正在使用的版本

whitenoise==2.0.6
Django==1.9.2

然后我将它安装在我的settings.py中间件中,如说明

'whitenoise.middleware.WhiteNoiseMiddleware',

当我这样做时,这会导致系统中断。当我去当地主机时,我收到以下错误

A server error occurred.  Please contact the administrator.

当我用Google搜索时,我只看到了另外一个问题。它是在github上,他们建议'使用ReadTheDocs上的文档,github是开发发生的地方,那里的文档是指未发布的版本。'

我该如何解决这个问题?欢迎所有指导

EDIT Traceback

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/wsgiref/handlers.py", line 137, in run
    self.result = application(self.environ, self.start_response)
  File "/Users/ray/Desktop/myheroku/practice/lib/python3.5/site-packages/django/contrib/staticfiles/handlers.py", line 63, in __call__
    return self.application(environ, start_response)
  File "/Users/ray/Desktop/myheroku/practice/lib/python3.5/site-packages/whitenoise/base.py", line 119, in __call__
    return self.application(environ, start_response)
  File "/Users/ray/Desktop/myheroku/practice/lib/python3.5/site-packages/django/core/handlers/wsgi.py", line 158, in __call__
    self.load_middleware()
  File "/Users/ray/Desktop/myheroku/practice/lib/python3.5/site-packages/django/core/handlers/base.py", line 51, in load_middleware
    mw_class = import_string(middleware_path)
  File "/Users/ray/Desktop/myheroku/practice/lib/python3.5/site-packages/django/utils/module_loading.py", line 20, in import_string
    module = import_module(module_path)
  File "/Users/ray/Desktop/myheroku/practice/lib/python3.5/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 956, in _find_and_load_unlocked
ImportError: No module named 'whitenoise.middleware'
[05/Apr/2016 17:23:01] "GET / HTTP/1.1" 500 59

1 个答案:

答案 0 :(得分:2)

whitenoise中间件是3.0版本中的新增功能,但您已安装2.0.6。

升级您的安装或改为使用version 2 docs