Python Django频道与Django 3.0/3.1?
有人能解释一下新事物之间的区别或互补性吗 据我所知,Django频道是一个在Django之外启动的项目,然后开始集成到核心Django中。但这项工作的现状仍然让我感到困惑 例如,今天我使用的是Django 2.2,我想为我的项目添加WebSocket支持。我应该:Python Django频道与Django 3.0/3.1?,python,django,django-channels,Python,Django,Django Channels,有人能解释一下新事物之间的区别或互补性吗 据我所知,Django频道是一个在Django之外启动的项目,然后开始集成到核心Django中。但这项工作的现状仍然让我感到困惑 例如,今天我使用的是Django 2.2,我想为我的项目添加WebSocket支持。我应该: 是否升级到最新的Django版本 使用Django通道包 两个动作都做吗 今天我使用的是Django 2.2,我想为我的项目添加WebSocket支持 如果您想向应用程序添加websocket支持,目前无需升级到django 3.
- 是否升级到最新的Django版本
- 使用Django通道包
- 两个动作都做吗
- WSGI服务器(实际上不是django的一部分):处理实际接受HTTP请求的协议
- 基本处理程序:它接受从服务器传递给它的请求,并确保它通过中间件和url配置发送,这样我们就得到了一个django请求对象和一个要传递给它的视图
- 视图层(按您的指示执行)
- ORM,以及所有其他你从Django那里得到的可爱的东西,我们可以从视图中调用
- 随着Django3.0的发布,真正增加的是与ASGI服务器(而不仅仅是WSGI服务器)通信的能力李>
- 当Django 3.1发布时(预计2020年8月),预计将有异步中间件和视图的功能
- 最后,在django 3.2,甚至4.0中,我们将在整个django上下获得异步功能
- Django通道添加了一种处理HTTP以外的协议的方法,并将集成添加到Django的会话框架和身份验证框架中,因此很容易将WebSocket之类的东西添加到Django项目中。它已经完成了,你今天就可以开始使用它了李>
- 本机异步支持是Django核心的基本重写。这是一项正在进行的工作。这非常令人兴奋,但暂时还不能真正从中受益