更新数据库更改页面

时间:2018-02-28 15:58:09

标签: python django

根据数据库中的更改更新UI元素的最佳方法是什么?例如,每当有人对帖子发表评论时,Facebook会自动更新每个用户的元素 - 这是如何完成的?

我知道数据提取是一种方法,但有没有更好的程序?

我想知道如何使用Python(Django)完成这样的事情,但也欢迎任何其他通用解决方案。

1 个答案:

答案 0 :(得分:1)

您正在寻找的是websockets协议:

  

WebSocket是一种计算机通信协议,提供全双工   单个TCP连接上的通信信道

通常使用Django的默认方法是使用django-channels项目:

  

频道增强Django带来WebSocket,长轮询HTTP,任务   使用熟悉的Django对代码进行卸载和其他异步支持   设计模式和灵活的底层框架,让你不   只定制行为,但也为自己编写支持   协议和需求。

您可能需要花一些时间来配置channels设置并修改您的应用程序以使用它,但如果您希望在某个操作完成后将数据从后端“推送”到前端,这可能就是这样做的方式。

我建议您查看channels-examples存储库,了解使用django-channels的示例聊天实现。