Python Django错误模块';白噪声&x27;找不到
我使用whitenoise在prod中部署静态文件,因此根据whitenoise的文档,建议在开发中也使用它 因此,我遵循文档,将以下内容添加到我的Python Django错误模块';白噪声&x27;找不到,python,django,whitenoise,Python,Django,Whitenoise,我使用whitenoise在prod中部署静态文件,因此根据whitenoise的文档,建议在开发中也使用它 因此,我遵循文档,将以下内容添加到我的settings.py文件中: INSTALLED_APPS = [ 'whitenoise.runserver_nostatic', 'django.contrib.admin', ...other ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddl
settings.py
文件中:
INSTALLED_APPS = [
'whitenoise.runserver_nostatic',
'django.contrib.admin',
...other
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware',
...other
]
但是当我使用python manage.py runserver 0.0.0.0:8000运行服务器时,我得到了错误
ModuleNotFoundError:没有名为“whitenoise”的模块
完整堆栈跟踪:
Exception in thread django-main-thread:
Traceback (most recent call last):
File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/threading.py", line 926, in _bootstrap_inner
self.run()
File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/path/to/venv/lib/python3.7/site-packages/django/utils/autoreload.py", line 53, in wrapper
fn(*args, **kwargs)
File "/path/to/venv/lib/python3.7/site-packages/django/core/management/commands/runserver.py", line 109, in inner_run
autoreload.raise_last_exception()
File "/path/to/venv/lib/python3.7/site-packages/django/utils/autoreload.py", line 76, in raise_last_exception
raise _exception[1]
File "/path/to/venv/lib/python3.7/site-packages/django/core/management/__init__.py", line 357, in execute
autoreload.check_errors(django.setup)()
File "/path/to/venv/lib/python3.7/site-packages/django/utils/autoreload.py", line 53, in wrapper
fn(*args, **kwargs)
File "/path/to/venv/lib/python3.7/site-packages/django/__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "/path/to/venv/lib/python3.7/site-packages/django/apps/registry.py", line 91, in populate
app_config = AppConfig.create(entry)
File "/path/to/venv/lib/python3.7/site-packages/django/apps/config.py", line 116, in create
mod = import_module(mod_path)
File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'whitenoise'
线程django主线程中的异常:
回溯(最近一次呼叫最后一次):
文件“/usr/local/cillar/python/3.7.6_1/Frameworks/python.framework/Versions/3.7/lib/python3.7/threading.py”,第926行,在bootstrap\u内部
self.run()
文件“/usr/local/ceral/python/3.7.6_1/Frameworks/python.framework/Versions/3.7/lib/python3.7/threading.py”,第870行,正在运行
自我目标(*自我参数,**自我参数)
包装器中的文件“/path/to/venv/lib/python3.7/site packages/django/utils/autoreload.py”,第53行
fn(*args,**kwargs)
文件“/path/to/venv/lib/python3.7/site packages/django/core/management/commands/runserver.py”,第109行,在内部运行
autoreload.raise\u last\u异常()
文件“/path/to/venv/lib/python3.7/site packages/django/utils/autoreload.py”,第76行,在raise\u last\u异常中
raise_异常[1]
文件“/path/to/venv/lib/python3.7/site-packages/django/core/management/_-init__.py”,执行中第357行
自动加载检查错误(django.setup)()
包装器中的文件“/path/to/venv/lib/python3.7/site packages/django/utils/autoreload.py”,第53行
fn(*args,**kwargs)
文件“/path/to/venv/lib/python3.7/site packages/django/_init__.py”,第24行,在安装程序中
应用程序。填充(设置。已安装的应用程序)
文件“/path/to/venv/lib/python3.7/site packages/django/apps/registry.py”,第91行,填充
app_config=AppConfig.create(条目)
文件“/path/to/venv/lib/python3.7/site packages/django/apps/config.py”,第116行,在create中
mod=导入模块(mod\u路径)
文件“/usr/local/cillar/python/3.7.6_1/Frameworks/python.framework/Versions/3.7/lib/python3.7/importlib/______.py”,第127行,在导入模块中
return _bootstrap._gcd_import(名称[级别:],包,级别)
文件“”,第1006行,在\u gcd\u导入中
文件“”,第983行,在_find_和_load中
文件“”,第965行,在“查找”和“加载”中解锁
ModuleNotFoundError:没有名为“whitenoise”的模块
我使用
pipfreeze
进行了检查,该模块与django3.0.4一起安装(v5.0.1)。那我为什么会犯这样的错误?你找到解决办法了吗?@FedericoCapaldo没有,但我的staic文件工作方式不同。在my urls.py中,我从django.contrib.staticfiles.URL导入staticfiles\u urlpatterns和urlpatterns+=staticfiles\u urlpatterns()
这将为每个静态文件生成一个URL。虽然不确定性能比较,但它可以与我尝试使用的Uvicorn一起使用。除了在我当前的virualenv中安装该软件包(bin/activate&&pipenv install whitenoise
)之外,我还通过全局安装whitenose(pip install whitenoise
)解决了这个问题。