我对django很好。我有postgresql
,其中有一些表,该表由C ++ apps
填充。现在,我想构建django应用程序,以便在数据库中发生任何更改时可视化实时基础,它应该在我的django前端中实时更新。
我没有听说要使用什么技术,听说过django-channel
,但不确定是否可以使用它。
这篇文章的目的是获得技术推荐建议。
在这种情况下有人可以帮助吗?
答案 0 :(得分:0)
通过渠道,您可以进行以下操作:
A)创建基于异步等待的HTTP / Websocket连接处理程序,该处理程序可以长时间保持打开状态。
B)在这些句柄之间(或从其他地方)发送消息,使得如果处理程序已订阅group
,则将调用该连接处理程序实例上的方法。
要拥有连接处理程序(使用Django的消费者),只要您更新数据库就可以获取更新,您可以执行以下两项操作之一。
1)当您写入数据库时,通过通道层发送消息。 2)当您的使用者连接时,设置一个Postgres事件触发器https://www.postgresql.org/docs/12/event-trigger-definition.html
(2)允许您在DB更新时获取事件,即使执行更新的代码对通道一无所知。 (1)另一方面,将要求对db进行所有更改的所有代码才能导入通道,但这是更标准的。