Django 频道错误 - 无法导入 BACKEND 'asgi_redis.RedisChannelLayer' [英] Django Channels Error - Cannot import BACKEND 'asgi_redis.RedisChannelLayer'
本文介绍了Django 频道错误 - 无法导入 BACKEND 'asgi_redis.RedisChannelLayer'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经安装了 Django-Channels,但在运行 daphne-server 时出现以下错误:
I have installed Django-Channels but while running the daphne-server I am getting this error given below:
File "/usr/local/lib/python2.7/dist-packages/channels/asgi.py", line 36, in make_backend
"Cannot import BACKEND %r specified for %s" % (self.configs[name]['BACKEND'], name)
channels.asgi.InvalidChannelLayerError: Cannot import BACKEND 'asgi_redis.RedisChannelLayer' specified for default
我的 settings.py 是:
My settings.py is:
CHANNEL_LAYERS = {
"default": {
"BACKEND": "asgi_redis.RedisChannelLayer",
"CONFIG": {
"hosts": [os.environ.get('REDIS_URL', 'redis://X.X.X.X:6379')],
},
"ROUTING": "MyProject.routing.channel_routing",
},
}
需要帮助解决此错误.
推荐答案
只需要安装'asgi_redis'.我假设它会在安装 Django-Channels 时默认安装,但事实并非如此.'asgiref' 默认安装,而不是 'asgi_redis'.因此,要解决此问题,只需运行:
Just needed to install 'asgi_redis'. I was assuming that it would have gotten installed by default while installing Django-Channels, but it doesn't. 'asgiref' gets installed by default and not 'asgi_redis'. So to solve this issue, one can just run:
> sudo pip install asgi_redis
这篇关于Django 频道错误 - 无法导入 BACKEND 'asgi_redis.RedisChannelLayer'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文