?目的:实现有新模型创建的时候自动通知浏览器刷新模型列表
本例子实现了,在admin新上传一个文档的时候,通知客户端
盗用一张介绍Websocket的图
1. 建一个 Django 项目,或者下载我的 Django base 项目
git clone git@github.com:chunkai-meng/base-django.git
2. 安装 channels
和 channels-redis
cd base-django/proj
pipenv install channels channels-redis
docker run --name websocket-redis -p 6379:6379 -d redis
3. 加入 Channel 到 INSTALLED_APPS
& 添加 CHANNEL_LAYERS
到 settings
# settings.py
INSTALLED_APPS = [
'channels',
# ...
]
....
ASGI_APPLICATION = "proj.routing.application"
CHANNEL_LAYERS = {
"default": {
"BACKEND": "channels_redis.core.RedisChannelLayer",
"CONFIG": {
"hosts": [("localhost",