【发布时间】:2020-04-30 03:22:01
【问题描述】:
我有一个 django 网站,其中包含在我的本地计算机上运行的 websockets 频道。我可以拨打python manage.py runserver 并且网站运行良好,前端websocket 连接可以从后端服务器发送和接收。但是,当我将 django 代码包装在 daphne 调用中时,它会引发错误:
daphne -b 0.0.0.0 backend.app_proj.asgi:application
File "c:\projects\injurycheck\v1\lib\site-packages\django\__init__.py", line 24, in setup apps.populate(settings.INSTALLED_APPS)
File "c:\projects\injurycheck\v1\lib\site-packages\django\apps\registry.py", line 91, in populate app_config = AppConfig.create(entry)
File "c:\projects\injurycheck\v1\lib\site-packages\django\apps\config.py", line 90, in create module = import_module(entry)
File "C:\Program Files\Python38\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'pipeline'
谁能说出为什么网站在runserver下可以正确构建,但在daphne里面却找不到实际包含在INSTALLED_APPS中的应用?
【问题讨论】:
-
是您的
manage.py,相对于它的“管道”模块在哪里,这看起来像是您的 python 路径的问题。 -
@MatthausWoolard 文件结构为:backend/manage.py backend/app_proj/settings.py backend/app_proj/asgi.py backend/pipeline/consumers.py
-
Debian 10 上的相同问题。我没有名为“whitenoise”的模块作为错误消息。
标签: python django django-channels daphne