提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
解决Django channels+celery+websocket打造聊天机器人失败的问题
前言
提示:写这边文章的目的:
例如:写这篇文章的目的是什么呢,是因为我当时参考了人家的文档,然后去写代码,一直失败了,我百思不得其解,百度了很多文档,都没有想到为什么,就想让后来人尽量少踩坑。
一、为什么会失败?
原因:channels 4.0之后默认不带Daphne服务器了。
二、解决方案
1.指定channels的版本为3.x;
2.安装时使用pip3 install -U channels[“daphne”]
三 注意,注意,注意
请在settings文件的INSTALLED_APPS中第一行添加’daphne’,如下图:
INSTALLED_APPS = [
'daphne',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'channels', # 注册channels
'chat.apps.ChatConfig',
'app01.apps.App01Config'
]
总结
很多时候,我们找到的文档已经和我们需要的脱节了,比如没有人告诉我们channels 4.0之后默认不带Daphne服务器了。所以也没有人告诉我们daphne需要放在INSTALLED_APPS中的,因为自己花了很多的时间在这上面,希望这篇文章能帮助那些也在同样身处困惑的人。