如何使用Django实现实时功能?

2024-09-27 04:20:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个重新思考的数据库。数据将每五分钟进入数据库。 我想创建一个网站来实时检查这个数据流从重新思考数据库。 也就是说,在浏览网页时,网页上数据库的数据可以自动更新,而不必刷新网页。 我知道有几种方法可以使它成为实时的,比如django频道或websockets。然而,django中的模型不支持rejectdb。在

对不起,我是一个制作网站的外行,可能表达不准确。 有人能给我一个关键字或提示吗?在


Tags: 数据django方法模型数据库网页websockets网站
1条回答
网友
1楼 · 发布于 2024-09-27 04:20:46

如果你的问题更具体,这里的社区将能够为你提供更好的支持。在

不过,这里有一个通用的解决方案。在

你需要做两件事:

  1. 创建一个后端API,允许您:

    • 检查是否已将新数据添加到数据库中
    • 通过restapi请求获取新数据
  2. 对此api发出前端AJAX请求

    • 获取数据
    • 定期(每30秒)检查是否有新数据
    • 如果检测到新数据,请再次获取数据

要使用Django作为后端,我建议使用Django Rest Framework来创建API。在

此API应具有两个端点:

  1. 数据的列表视图
  2. 返回最后一个数据点的id和时间戳的终结点

下一步,您将必须创建一个使用javascript向这些端点发出请求的前端。获取数据时,存储最新数据点的id和时间戳。使用此项检查是否有新数据。在

我建议使用一个Javascript框架,比如Angular或{a3},但根据您的需要,这些可能会有点过头了。在

编辑:

现在你已经更新了你的答案,使之更具体,下面是我的建议。听起来你的首要任务是重新考虑数据库和实时数据。Django不太适合这一点,因为它与reinstdb不兼容。然而,通过Django频道,实时支持在Django中取得了长足的进步。在

听起来您在项目中处于早期阶段,在Django中几乎没有代码库。我建议使用horizon和rethink db一起使用。Horizon是一个javascript后端,为rewingdb的实时数据而构建。在

相关问题 更多 >

    热门问题