我在运动领域中已有一个Django项目,其应用程序基于Model-View-Template结构构建。许多模型和视图都相当复杂,并且目前可以很好地运行。来自数据库的数据(分数等)通过表单(HTTP POST请求)与一些传入的用户输入进行组合,以通过模板显示在网页上。
但是,我现在需要实时数据向用户显示并连续不断地自动刷新给所有用户,这是因为其中一个用户输入了新内容(在前端),或者是因为在游戏过程中得分改变了(直接进入后端)。
我已经完成了一些关于Stack Overflow的研究,以及有关Youtube /网络其他部分的教程,看来对于我来说,要使用Django Channels,我必须从头开始并构建一切基础,我想避免。如何在我的Django应用程序中轻松使用websocket协议,而不必完全重做到目前为止所做的一切?
答案 0 :(得分:0)
您真的不需要从头开始或其他任何事情。您只需要使用通道添加模块即可。我假设当前仅在刷新页面时才获取数据。您需要做的是编写一个使用者,该使用者用于通过websocket直接向客户端发送消息。然后在最前面,您可以使用在Websocket中收到的每条消息的分数更新小部件。您还可以通过websocket将用户操作流传输到服务器,然后由使用者将其广播到所需的客户端。您甚至可能不需要更改现有代码中的任何内容。 通过阅读频道教程,将更容易理解它的工作原理以及如何将其合并到项目中。阅读后对我来说更清楚了,所以我建议你也这样做